CSS頁面配置基礎3——元素浮動

來源:互聯網
上載者:User

標籤:html   前端   css   網站設計   布局   

1. 浮動(float)是基於CSS的現代Web設計用到的主要功能之一,可以用它來建立多累的網頁布局,從無序列表建立導航工具條,不是用table而建立類似表格的對其方式等。
為使元素浮動到左邊或者右邊,並使後面的文本環繞它,可使用float屬性,float屬性的取值是:none(不浮動),left(向左浮動),right(向右浮動)。
使用float屬性後,浮動的元素從正常文檔流中脫離出來,同時對布局中的其他元素造成一定的影響。
浮動可以應用於任何元素。

我個人認為我們可以這樣理解浮動(如有什麼不對的,歡迎指正),在平常我們用到區塊層級元素的時候,如果我們將兩個區塊層級元素嵌套在一個div中,在正常情況下,這兩個區塊層級元素會從上到下一次排列,即一個在上,一個在下,如果我們希望做到將這兩個區塊層級元素排列在一排(在這兩個區塊層級元素的寬度相加沒有超過它們的父元素的寬度的情況下),我們可以用float屬性對其進行設定。例子如下

<!DOCTYPE html><html><head><title>浮動</title><meta charset="utf-8" /><style type="text/css">.all{width: 250px;height: 250px;background-color: #faa;}.div1{width: 100px;height: 100px;background-color: #7BBD53;margin-left: 10px;/*添加浮動*/float: left;}.div2{width: 100px;height: 100px;background-color: yellow;margin-left: 10px;/*添加浮動*/float: left;/*必須兩處都添加浮動才能達到效果。*/}</style></head><body><div class="all"><div class="div1">div1</div><div class="div2">div2</div></div></body></html>
在沒有添加浮動之前


添加向左浮動:


right的應用和left沒有什麼不同,主要是一個靠左,一個靠右。

上述例子向右浮動的效果:


文本環繞的效果:

<!DOCTYPE html><html><head><title>圍繞文本</title><meta charset="utf-8" /><style type="text/css">span.text{width: 100px;margin:20px;background-color: #eea;font-weight: bold;float: right;}p{width: 300px;border: solid;border-width: 2px;border-color: #999;padding:30px;}</style></head><body><p><span class="text"> 華胥引華胥引華胥引</span><span>這是一個發生在亂世的故事。城破之日,衛國公主葉蓁以身殉國,依靠鮫珠死而複生。當她彈起華胥調,便生死人肉白骨,探入夢境與回憶。幻術構成的曲譜裡,儘是人生的辛酸與苦澀。而她與亡她國家的陳國世子,在一次幻境中相遇,身份兩重,緣也兩重。</span></p></body></html>
效果:



2、浮動的幾個 基本行為:(1)當float不等於none引起元素浮動時,元素被視作區塊層級元素(block-level),等同於設定display:block;
(2)當浮動一個文本類型元素時,必須制定該元素的width屬性,如果不設定寬度,元素內容就會摺疊到最可能的最小寬度。
(3)浮動元素停留在包含它的父級元素的內容地區內,不會穿過padding地區。
(4)浮動元素的margin元素不會重合。
(5)在來源文件中,相鄰的浮動元素不允許重疊。
(6)如果元素向同一方向浮動,每個後續的浮動元素必須向該方向移動,直到碰到父級元素的內邊緣或者碰到前面的浮動元素。(這會導致多個浮動元素集聚在目標邊緣)
(7)如果沒有足夠的空間讓浮動元素肩並肩出現,第二個浮動元素將向下移動,直到有足夠的空間來顯示它而不覆蓋第一個浮動元素。
3、 限制浮動元素的頂部邊緣的高度的規則
(1)浮動元素的頂部必須停留在它的父級元素的頂部內邊緣之內。
(2)不被區塊層級元素包含的浮動元素的頂部不能比前面的區塊層級元素高。
(3)浮動元素的頂部不能比同在文檔源中的前一個浮動元素高。

4、清除浮動:clear(只能用於區塊層級元素)。在某些情況下,我們想浮動元素某一個邊的地區被清除,後續的元素從容器的正常位置開始顯示,這時候我們可以使用clear屬性阻止一個元素出現在浮動元素的後面。

<!DOCTYPE html><html><head><title>clear屬性</title><meta charset="utf-8" /><style type="text/css">img{float:left;margin-right: 10px;}h1{clear:left;top-margin:2em;}</style></head><body><div style="width:300px;height:600px;"><p><img src="tu.png">浮動是基於CSS的現代web設計用到的主要功能之一,它可以用來建立多列的網頁布局、導航工具條等。</p><h1>clear屬性清除浮動元素</h1><p>使用clear屬性群組織一個元素出現在元素的後面</p></div></body></html>
使用clear清除浮動的影響之前:



使用clear清除浮動的影響之後:


CSS頁面配置基礎3——元素浮動

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.