国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Rumah hujung hadapan web tutorial css css中Float屬性詳解

css中Float屬性詳解

Mar 22, 2018 pm 03:15 PM
css float

這次給大家?guī)韈ss中Float屬性詳解,使用css中Float屬性的注意事項(xiàng)有哪些,下面就是實(shí)戰(zhàn)案例,一起來看一下。

一、Float的特性

1. 應(yīng)用于文字圍繞圖片

2. 創(chuàng)建一個(gè)塊級(jí)框

3. 多列浮動(dòng)布局

4. 浮動(dòng)元素的寬度、高度自適應(yīng),但可以設(shè)置其值。

二、核心解決的問題

文字圍繞圖片:img標(biāo)簽與多個(gè)文本標(biāo)簽放置在一個(gè)容器中,如果img浮動(dòng),文本標(biāo)簽會(huì)圍繞圖片。

<img src="../img/a.jpg" style=" width: 100px; height: 200px; float: left;" alt="">
????????<p>001文件內(nèi)容文件內(nèi)容文內(nèi)容文件內(nèi)容<br/>
????????文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)內(nèi)容文件內(nèi)容<br/>
????????文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容<br/>?
????????文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文內(nèi)容文件內(nèi)容文件內(nèi)容<br/>
????????<p>p標(biāo)簽文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文容文件內(nèi)容文件內(nèi)容文件內(nèi)容</p>
????????<p>p標(biāo)簽文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容</p>
????????文件內(nèi)容文件內(nèi)容文件內(nèi)容文件件內(nèi)容文件內(nèi)容文件內(nèi)容<br/>
????????文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容<br/>?
????????文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)容文件內(nèi)內(nèi)容文件內(nèi)容<br/>
????????文件內(nèi)容文件內(nèi)容文件內(nèi)容文件容文件內(nèi)容文件內(nèi)容<br/>
????????文件內(nèi)容文件內(nèi)容文件內(nèi)容文件容文件內(nèi)容文件內(nèi)容<br/>
????????</p>

2.1 這是一個(gè)問題

浮動(dòng)元素與正常元素相鄰,且浮動(dòng)元素與正常元素之間沒有清除浮動(dòng),此時(shí)正常元素會(huì)被浮動(dòng)元素蓋住,但包含的內(nèi)容會(huì)圍繞浮動(dòng)元素顯示。

<p style="width: 100px; height: 200px; background: red;float: left;" >001</p>?
<p style="width: 100px; height: 200px; background: gray;float: none;" ><p>002</p></p>

001浮動(dòng),002沒有浮動(dòng),但002元素本身被001蓋住,但內(nèi)容卻圍繞001顯示。

三、非核心且主要應(yīng)用領(lǐng)域

分欄布局:讓區(qū)塊先水平排列,然后超出部分另起一行。

主要特點(diǎn)

1.父級(jí)高度塌陷(這也是一個(gè)嚴(yán)重的問題)

.wrap{
???????????background:red;?
???????????padding:10px;
???????????width:auto;
????????}
????????.left{
????????????background:gray;
????????????width:200px;
????????????height:100px;
????????????float:left;
????????}
????????.right{
????????????background:yellow;
????????????width:100px;
????????????height:100px;
????????????float:left;
????????}
<p class="wrap">
????????<p class="left">left</p>
????????<p class="right">right</p>
</p>

2.寬、高變成自適應(yīng)子元素,但寬、高的設(shè)置有效

.wrap{
???????????background:red;?
???????????padding:10px;
???????????float:left;
????????}?
????????.left{
????????????width:100px;
????????????background:gray;
????????}
????????.right:{
????????????width:200px;
????????????background:yellow;
????????}
<p class="wrap">
????????<p class="left">left</p>
????????<p class="right">right</p>
</p>

2. 解決高度塌陷的問題

首先我們需要了解BFC和IFC這兩人個(gè)基本的概念,因?yàn)樗c瀏覽器的渲染有著密切的關(guān)系。

1.BFC(塊級(jí)格式化上下文)

他是一個(gè)獨(dú)立渲染的區(qū)域,規(guī)定區(qū)域內(nèi)部如何布局,且與外部毫不相干,主要規(guī)則如下:

1.1 內(nèi)部的box會(huì)垂直方向,一個(gè)接一個(gè)地放置

1.2 Box垂直方向的距離由margin決定,屬于同一個(gè)BFC的兩個(gè)相鄰box的Margin會(huì)發(fā)生重疊

1.3 BFC區(qū)域不會(huì)與float重疊

.head{
????????????background:pink;
????????????margin:?20px?0px;
????????????height:100px;
????????}
????????.wrap{
???????????background:red;?
???????????padding:10px;
???????????margin:20px?0px;
???????????overflow:hidden;
????????}?
????????.left{
????????????width:100px;
????????????background:gray;?
????????????margin:10px?0px;
????????}
????????.right:{
????????????width:200px;
????????????background:yellow;??
????????????margin:20px?0px;
????????}
<p class="head">head</p>
????<p class="wrap">
????????<p class="left">left</p>
????????<p class="right">right</p>
????</p>

.head與.wrap兩個(gè)box之間上下各設(shè)置有20px的外邊距,但發(fā)生了重疊;

.head與.left兩個(gè)之間,.head有20px的外邊距,.left有10px的外邊距,沒有發(fā)生重疊,因?yàn)?wrap使其創(chuàng)建了BFC(overflow:hidden)。

1.4 每個(gè)box的margin 左邊,與包含border box的左邊相接觸(右邊一樣),浮動(dòng)也是如此

2. IFC(行級(jí)格式化上下文)

框從包含塊的頂部開始,一個(gè)接一個(gè)水平放置。水平方向上的外邊距、邊框、內(nèi)邊距所占空間都放在一起(display為inline、inline-block;元素本身具有inline特性的元素都具體以下特征)。規(guī)則如下:

2.1 不能指定寬高

2.2 Margin、Padding、border垂直方向的無效

2.3 行框的左邊緊貼包含塊的左邊,而行框的右邊緊貼其包含框的右邊,而浮動(dòng)塊可以插入在包含塊邊緣與行框之間。

2.4 行內(nèi)框高度由line-height決定。

此節(jié)例子可以參考display章節(jié)的inline元素。

3. 解決方案

主要根據(jù)BFC的原理實(shí)現(xiàn),因?yàn)锽FC的渲染的是整塊區(qū)域,也就會(huì)計(jì)算出寬、高。這也是傳說中的清除浮動(dòng)的方案

3.1 父容器創(chuàng)建BFC方法

3.1.1 創(chuàng)建BFC的方法

a) Float除了none以外的取值;

b) Overflow除了visible以外的值;

c) Display值為table-cell、table-caption、inline-block、flex、inline-flex等

d) Position值為absloute、fixed

e) Fieldset元素

3.1.2 清除浮動(dòng)

a) Float、overflow、display三種方式都可以清除浮動(dòng),但position、fieldset雖然創(chuàng)建了bfc但不可以清除浮動(dòng)(也就是不能解決高度塌陷的問題)。主要原因?yàn)椋簆osition、fieldset都需要子元素來撐開父容器的高度,但子元素浮動(dòng)后又不存在高度,所以失效。

b) Float、overflow、display示例代碼:

.wrap{
????????????background:?gray;
????????????padding:?10px;
????????????overflow:?auto;
????????}
????????.left,?.right{
????????????background:?red;
????????????float:?left;
????????????width:?200px;
????????????height:?100px;
????????}
????????.right{
????????????background:?yellow;
????????}
????????.footer{
????????????background:?pink;
????????}
<p class="wrap" >
????????<p class="left">left</p>
????????<p class="right">right</p>
????</p>
<p class="footer">footer</p>

3.1.3 最后一個(gè)子元素clear:both

利用clear:both觸發(fā)父容器重新計(jì)算高度的原理實(shí)現(xiàn),示例代碼如下:

.wrap{
????????????background:?gray;
????????????padding:?10px;?
????????}
????????.left,?.right{
????????????background:?red;
????????????float:?left;
????????????width:?200px;
????????????height:?100px;
????????}
????????.right{
????????????background:?yellow;
????????}
????????.footer{
????????????background:?pink;
????????}
????????.clear{
????????????clear:?both;
????????????zoom:?1;
????????}
<p class="wrap" >
????????<p class="left">left</p>
????????<p class="right">right</p>
????????<p class="clear"></p>
????</p>
<p class="footer">footer</p>

3.1.4 After添加最后一個(gè)子元素

利用css的:after偽元素實(shí)現(xiàn),動(dòng)態(tài)插入元素并清除浮動(dòng):

.wrap{
????????????background:?gray;
????????????padding:?10px;?
????????}
????????.wrap:after{
????????????content:?'';
????????????display:?block;
????????????overflow:?hidden;
????????????clear:?both;
????????}
????????.left,?.right{
????????????background:?red;
????????????float:?left;
????????????width:?200px;
????????????height:?100px;
????????}
????????.right{
????????????background:?yellow;
????????}
????????.footer{
????????????background:?pink;
????????}
<p class="wrap" >
????????<p class="left">left</p>
????????<p class="right">right</p>?
????</p>
<p class="footer">footer</p>

4. 總結(jié)

1. 利用bfc方式清除浮動(dòng),簡單、瀏覽器支持良好,但在IE6-版本支持存在問題。但是存在以下局限性,要適環(huán)境而用:

??? a) Overflow方式:滾動(dòng)條會(huì)被隱藏,如果子內(nèi)容超高則存在顯示不全的問題;

??? b) Float方式:讓父容器浮動(dòng),那么就存在對父容器同輩元素的影響;

??? c) Dipslay方式:讓父容器變?yōu)閠able或者flex等,都存在不明確的影響,大家都不推薦使用。

2. 最佳解決方案:利用:after添加一個(gè)偽元素并給予clear:both和zoom:1來實(shí)現(xiàn)清除浮動(dòng),兼容性好,對環(huán)境影響最小。

相信看了本文案例你已經(jīng)掌握了方法,更多精彩請關(guān)注php中文網(wǎng)其它相關(guān)文章!

推薦閱讀:

CSS實(shí)現(xiàn)3D按鈕效果

opacity透明度濾鏡的IE兼容解決方法

水平垂直居中的方法

Atas ialah kandungan terperinci css中Float屬性詳解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1502
276
Bagaimana cara menukar warna teks dalam CSS? Bagaimana cara menukar warna teks dalam CSS? Jul 27, 2025 am 04:25 AM

Untuk menukar warna teks dalam CSS, anda perlu menggunakan atribut warna; 1. Gunakan atribut warna untuk menetapkan warna latar depan teks, nama warna yang menyokong (seperti merah), kod heksadesimal (seperti #FF0000), nilai RGB (seperti RGB (255,0,0)), nilai HSL (0,100% RGBA (255,0,0,0.5)); 2. Anda boleh memohon warna ke mana -mana elemen yang mengandungi teks, seperti tajuk H1 hingga H6, perenggan P, pautan A (perhatikan tetapan warna dari keadaan yang berlainan: pautan, a: dilawati, A: hover, a: aktif), butang, div, span, dan sebagainya; 3. Kebanyakan

Bagaimana untuk membersihkan CSS yang tidak digunakan? Bagaimana untuk membersihkan CSS yang tidak digunakan? Jul 27, 2025 am 02:47 AM

UseAutomatedToolsLikePurgecssoruncsStoScanandRemoveUnusedCss; 2.integratePurgingIntoyourBuildProcessviawebpack, Vite, OrtailWind 'Scontentconfiguration; 3.auditcssusageWithchromedevtoolscoveragetabbeforepurgingtoavoidremovingneededstyles; 4.safelistdynamic

Terangkan unit CSS yang berbeza dan bila menggunakannya Terangkan unit CSS yang berbeza dan bila menggunakannya Jul 27, 2025 am 04:24 AM

Dalam pembangunan web, pilihan unit CSS bergantung kepada keperluan reka bentuk dan prestasi responsif. 1. Piksel (PX) digunakan untuk menetapkan saiz seperti sempadan dan ikon, tetapi tidak kondusif untuk reka bentuk responsif; 2. Peratusan (%) diselaraskan mengikut bekas induk, sesuai untuk susun atur streaming tetapi perhatian terhadap ketergantungan konteks; 3.EM didasarkan pada saiz fon semasa, REM berdasarkan fon elemen akar, sesuai untuk fon elastik dan kawalan tema bersatu; 4. Unit Viewport (VW/VH/VMIN/VMAX) diselaraskan mengikut saiz skrin, sesuai untuk elemen skrin penuh dan UI dinamik; 5. Auto, mewarisi, nilai awal dan lain -lain digunakan untuk mengira, mewarisi atau menetapkan semula gaya secara automatik, yang membantu pengurusan susun atur dan gaya yang fleksibel. Penggunaan rasional unit -unit ini dapat meningkatkan fleksibiliti dan responsif halaman.

Apakah konteks penyusunan? Apakah konteks penyusunan? Jul 27, 2025 am 03:55 AM

Astackingcontextiself-containedlayerincthattontrolsthez-orderofoverlappappingelements, whaneNestedContextSrestrictz-indexinteractions; itiscreatedbypropertiesez-indexonpositionedelements, kelegapan

Bagaimana cara menggunakan harta penapis latar belakang CSS? Bagaimana cara menggunakan harta penapis latar belakang CSS? Aug 02, 2025 pm 12:11 PM

Filter latar belakang digunakan untuk menggunakan kesan visual kepada kandungan di belakang unsur-unsur. 1. Gunakan penapis latar belakang: blur (10px) dan sintaks lain untuk mencapai kesan kaca beku; 2. Menyokong pelbagai fungsi penapis seperti kabur, kecerahan, kontras, dan lain -lain dan boleh ditumpangkan; 3. Ia sering digunakan dalam reka bentuk kad kaca, dan perlu memastikan bahawa unsur -unsur bertindih dengan latar belakang; 4. Pelayar moden mempunyai sokongan yang baik, dan @supports boleh digunakan untuk menyediakan penyelesaian penurunan; 5. Elakkan nilai kabur yang berlebihan dan kerap meredakan untuk mengoptimumkan prestasi. Atribut ini hanya berkuatkuasa apabila terdapat kandungan di belakang unsur -unsur.

Bagaimana cara gaya pautan dalam CSS? Bagaimana cara gaya pautan dalam CSS? Jul 29, 2025 am 04:25 AM

Gaya pautan harus membezakan negara-negara yang berbeza melalui kelas pseudo. 1. Gunakan A: Pautan Untuk menetapkan gaya pautan yang tidak dicapai, 2. A: Dikunjungi untuk menetapkan pautan yang diakses, 3. Anda boleh meningkatkan kebolehgunaan dan kebolehcapaian dengan menambahkan padding, kursor: penunjuk dan mengekalkan atau menyesuaikan garis besar fokus. Anda juga boleh menggunakan sempadan bawah atau animasi untuk memastikan bahawa pautan mempunyai pengalaman pengguna yang baik dan aksesibiliti di semua negeri.

Bagaimana cara memusatkan teks dalam CSS? Bagaimana cara memusatkan teks dalam CSS? Jul 27, 2025 am 03:16 AM

Gunakan Teks-Align: Pusat untuk mencapai pusat teks mendatar; 2. Gunakan ITEM Align-item Flexbox: Pusat dan Justify-Content: Pusat untuk mencapai pusat menegak dan mendatar; 3. Teks satu baris boleh dipusatkan secara menegak dengan menetapkan ketinggian garis yang sama dengan ketinggian kontena; 4. Unsur kedudukan mutlak boleh digabungkan dengan atas: 50%, kiri: 50%dan transform: Terjemahan (-50%, -50%) untuk mencapai pusat; 5. ITEM PLACE CSSGRID: Pusat juga boleh mencapai pusat dua paksi pada masa yang sama. Adalah disyorkan untuk menggunakan Flexbox atau Grid terlebih dahulu dalam susun atur moden.

Apakah stylesheet ejen pengguna? Apakah stylesheet ejen pengguna? Jul 31, 2025 am 10:35 AM

Stylesheet ejen pengguna adalah gaya CSS lalai yang melayari secara automatik untuk memastikan bahawa unsur -unsur HTML yang belum menambah gaya tersuai masih boleh dibaca asas. Mereka mempengaruhi penampilan awal halaman, tetapi terdapat perbezaan antara pelayar, yang mungkin membawa kepada paparan yang tidak konsisten. Pemaju sering menyelesaikan masalah ini dengan menetapkan semula atau menyeragamkan gaya. Gunakan panel pengiraan atau gaya alat pemaju untuk melihat gaya lalai. Operasi liputan biasa termasuk membersihkan margin dalaman dan luaran, mengubah suai garis bawah pautan, menyesuaikan saiz tajuk dan menyatukan gaya butang. Memahami gaya ejen pengguna boleh membantu meningkatkan konsistensi penyemak imbas dan membolehkan kawalan susun atur yang tepat.

See all articles