搜尋
首頁web前端css教學div+css浮動的解決方法

div+css浮動的解決方法

Mar 31, 2017 am 11:15 AM
css浮動

如何清楚浮动(一)

  已知一个大的div容器,这个容器包含了两个子div容器,然后在这两个子div容器的后面再添加一个div(这个div表示清除浮动的div容器),清楚浮动的div容器设置css样式为clear:both,此时,大的div标签的内部(左右两边/*css5*/)浮动就清除了。

  如果有一个大的div容器

,这个大的div包含了一个子div容器
,子div容器設定一個寬度、高度、背景色,不設定內、外邊距以及浮動,此時子div容器預設居左,這時子div居左是浮動(float)繼承瀏覽器的屬性,不具有佈局的功能。然後我們設定這個子div容器的浮動,讓它居左float:left;我發現設定了浮動居左float:left,子div容器產生了浮動,子div容器離大div容器頂部有一定距離。
<body>
        <div class="divcss5">
            <div class="clear"></div>
        <!--<div class="clear eft"></div>
                    <div class="clear ight"></div>-->
        </div> 
    </body>

浮動有margin屬性

  然後我margin-top:10px, 子div容器在原有的基礎上向下移動了10px的距離,也就是說,浮動不會影響margin-top屬性應有的偏移量,同理也不會影響margin-leftmargin-rightmargin-bottom屬性應有的偏移量。

浮動沒有top,left,right,bottom屬性

  然後,現在我刪掉margin-top:10px;,給子div容器設定top:10px,發現縱座標並沒有發生偏移,也就是說浮動並沒有top屬性。同理也就沒有left、right、bottom屬性。

  那麼,在什麼情況下設定top、left、right、bottom的屬性才能對浮動運作呢?

浮動有top,left,right,bottom屬性(條件設定相對位置position)

  於是,我給子div容器加了相對位置position:relative,接著設定top:10px,突然發現子div容器向下偏移了10px。

  繼續在子div浮動的狀態,給它設定position:relative;,接著給它設定margin-left:10px;,看到子div容器的位置水平向右發生了10px的偏移量,同理margin-top、margin-right、margin-bottom都會改變。

  也就是說,當給子div容器設定浮動float:left,接著設定margin-left會起作用,設定top是沒有作用。只有給子div容器設定相對位置position的時候,top才能在浮動的狀態下起作用,那麼是不是說left,top是在相對位置的時候,才能起作用呢?那現在我們就做一個實驗,我在子div容器裡把float:left;position:relative;都刪掉,不會有浮動,也不會有相對位置,然後寫上top:10px;left:10px;對應的css程式碼如下.clear{width: 200px;background: #f2e;color:#030617;height: 20px;top:50px;left: 10px;};,結果是子div容器根本沒有在橫、縱軸移動過位置,所以事實證明left、top是在設定了相對位置position的時候才起作用。 margin就是不管你設定position與不設定position都會起作用。

  繼續上面的float浮動,如果現在給float設定inherit;繼承瀏覽器的浮動屬性,此時我們看子div是不浮動的,預設居左。同樣的給子div設定浮動樣式 none initial也不會有浮動作用。只有給子div容器設定了left和right的浮動,子div容器才會出現浮動狀態。

如何清楚浮動(二)

  下面,我們用一種其他的方法來清除浮動,HTML程式碼還是以上的程式碼,大容器的div的css程式碼:.divcss5{padding:10px 0;width: 100%; left: 50%;right: 50%;background: #007CB5;},子div容器的css代碼:.clear{width: 200px;background: #f2e ;color:#030617;height: 20px;float:left;},此時看到的是浮動的效果,子div容器浮在大容器上面,同樣的原理,我還是用清除浮動clear:both;我們可以用css偽元素:after,下面就是一個很簡單的css程式碼,寫給父容器css偽類別,程式碼:.divcss5:after{content: "1";clear : both;display: block;},此時,我們看到的是,清除了大容器的浮動,並且在瀏覽器上能看到子div容器被包含在了大div容器內部。在瀏覽器上查看元素,可以看到after包含在了父容器內,所以,after相當於在給父容器內部加一個清楚浮動的div,只是少了一個div層,這個層被.divcss5:after實現了。

以上是div+css浮動的解決方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
Wufoo ZapierWufoo ZapierApr 13, 2025 am 11:02 AM

Wufoo一直在集成方面非常出色。他們與特定應用程序(例如廣告系列顯示器,MailChimp和Typekit)進行集成,但他們也

jamstack景觀jamstack景觀Apr 13, 2025 am 11:00 AM

Netlify發明了Jamstack一詞,這不是一個大秘密。雖然可以在不使用Netlify的情況下擁抱jamstack,但值得注意的是Netlify在

為什麼我們使用.html代替.htm?為什麼我們使用.html代替.htm?Apr 13, 2025 am 10:59 AM

來自安迪的有趣問題:

我的開發ama的剪輯我的開發ama的剪輯Apr 13, 2025 am 10:55 AM

我最近在開發人員上做了一個AMA。只是藉此機會在這裡搬遷一些答案,例如一個好的indiewebber。

我們應該構建幾個網站?我們應該構建幾個網站?Apr 13, 2025 am 10:42 AM

有人給我發了電子郵件:

Gatsby和WordPressGatsby和WordPressApr 13, 2025 am 10:39 AM

Gatsby和WordPress是一個有趣的組合。一方面,這很有意義。蓋茨比可以從任何地方吸收數據,而WordPress具有

如何在Gatsby中獲取當前頁面URL如何在Gatsby中獲取當前頁面URLApr 13, 2025 am 10:37 AM

這項看似簡單的任務使我在網站上工作時抓了幾個小時。事實證明,獲取當前頁面URL

我在2019年作為網絡開發人員(和一個人)的進步如何我在2019年作為網絡開發人員(和一個人)的進步如何Apr 13, 2025 am 10:35 AM

我們進入了二十一世紀的二十多歲的咆哮(提示爵士音樂?)。重要的是,我和我作為負責任的人關注

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具