版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、CSS浮動(dòng)屬性Float詳解原文地址:冰羽博客什么是CSS Float?float 是 css 的定位屬性。在傳統(tǒng)的印刷布局中,文本可以按照需要圍繞圖片。一般把這種方式稱為“文本環(huán)繞”。在網(wǎng)頁(yè)設(shè)計(jì)中,應(yīng)用了CSS的float屬性的頁(yè)面元素就 像在印刷布局里面的被文字包圍的圖片一樣。浮動(dòng)的元素仍然是網(wǎng)頁(yè)流的一部分。這與使用絕對(duì) 定位的頁(yè)面元素相比是一個(gè)明顯的不同。絕對(duì)定位的頁(yè)面元素被從網(wǎng)頁(yè)流里面移除了,就像印刷布局里面的文本框被設(shè)置為無(wú)視頁(yè)面環(huán)繞一樣。絕對(duì)定位的元素不會(huì) 影響其它元素,其它元素也不會(huì)影響它,無(wú)論它是否和其它元素挨著。像這樣在一個(gè)元素上用CSS設(shè)置浮動(dòng):#sidebar float
2、: right; fload屬性有四個(gè)可用的值:Left 和Right 分別浮動(dòng)元素到各自的方向,None (默認(rèn)的) 使元素不浮動(dòng),Inherit 將會(huì)從父級(jí)元素獲取float值。Float的用處除了簡(jiǎn)單的在圖片周圍包圍文字,浮動(dòng)可用于創(chuàng)建全部網(wǎng)頁(yè)布局。Float對(duì)小型的布局同樣有用。例如頁(yè)面中的這個(gè)小區(qū)域。如果我們?cè)谖覀兊男☆^像圖片上使用Float,當(dāng)調(diào)整圖片大小的時(shí)候,盒子里面的文字也將自動(dòng)調(diào)整位置:同樣的布局可以通過(guò)在外容器使用相對(duì)定位,然后在頭像上使用絕對(duì)定位來(lái)實(shí)現(xiàn)。這種方式中,文本不會(huì)受頭像圖片大小的影響,不會(huì)隨頭像圖片的大小而有相應(yīng)變化。清除Float清除(clear)是浮動(dòng)(f
3、loat)的相關(guān)屬性。一個(gè)設(shè)置了清除Float的元素不會(huì)如浮動(dòng)所設(shè)置的一樣,向上移動(dòng)到Float元素的邊界,而是會(huì)忽視浮動(dòng)向下移動(dòng)。如下,一圖頂千言。上例中,側(cè)欄向右浮動(dòng),并且短于主內(nèi)容區(qū)域。頁(yè)腳(footer)于是按浮動(dòng)所要求的向上跳到了可能的空間。要解決這個(gè)問(wèn)題,可以在頁(yè)腳(footer)上清除浮動(dòng),以使頁(yè)腳(footer)待在浮動(dòng)元素的下面。#footer clear: both; 清除(clear)也有4個(gè)可能值。最常用的是 both,清楚左右兩邊的浮動(dòng)。left 和 right 只能清楚一個(gè)方向的浮動(dòng)。none 是默認(rèn)值,只在需要移除已指定的清除值時(shí)用到。inherit 應(yīng)該時(shí)第五個(gè)
4、值,不過(guò)很奇怪的是 IE 不支持(這個(gè)不奇怪吧,IE 從來(lái)都這么特立獨(dú)行吧 糖伴西紅柿注)。只清除左邊或右邊的浮動(dòng),實(shí)際中很少見,不過(guò)絕對(duì)有他們的用處。偉大的塌陷使用浮動(dòng)(float)的一個(gè)比較疑惑的事情是他們?cè)趺从绊懓麄兊母冈氐?。如果父元素只包含浮?dòng)元素,那么它的高度就會(huì)塌縮為零。如果父元素不包含任何的可見背景,這個(gè)問(wèn)題會(huì)很難被注意到,但是這是一個(gè)很重要的問(wèn)題。塌陷的直觀對(duì)立面更不好,看看下面的情況:當(dāng)上面的塊級(jí)元素自動(dòng)擴(kuò)展以適應(yīng)浮動(dòng)元素時(shí),段落間的文本流中會(huì)出現(xiàn)非自然的空白換行,而且沒(méi)有有效的方法來(lái)修正這個(gè)問(wèn)題。對(duì)于這種情況,設(shè)計(jì)師的抱怨會(huì)更甚于對(duì)塌陷的抱怨(沒(méi)理解,不是設(shè)計(jì)完成之后
5、才會(huì)進(jìn)行頁(yè)面編碼嗎? 糖伴西紅柿)。為了防止怪異的布局和跨瀏覽器的問(wèn)題,塌陷問(wèn)題幾乎總是被要處理的。我們?cè)谌萜髦械母?dòng)元素之后,容器結(jié)束之前來(lái)清除浮動(dòng)。清除浮動(dòng)的技術(shù)如果你很明確的知道接下來(lái)的元素會(huì)是什么,可以使用 clear:both; 來(lái)清除浮動(dòng)。這個(gè)方法很不錯(cuò),它不需要 hack,不添加額外的元素也使得它有良好的語(yǔ)義性。當(dāng)然事情并不是都可以這樣解決的,工具箱中還是需要另外幾個(gè)清除浮動(dòng)的工具??誨iv方法從字面來(lái)看,是一個(gè)空的 div。有時(shí)可能會(huì)用或者一些其他元素,但是 div 是最常用的,因?yàn)樗鼪](méi)有瀏覽器默認(rèn)樣式;沒(méi)有特殊功能,而且一般不會(huì)被 css 樣式化。這個(gè)方法因?yàn)橹皇菫榱吮憩F(xiàn),對(duì)
6、頁(yè)面沒(méi)有上下文涵義而被純語(yǔ)義論者嘲笑。誠(chéng)然,從嚴(yán)格的角度來(lái)說(shuō)他們是對(duì)的,但是這個(gè)方法有效而且沒(méi)有任何傷害。overflow 方法在父元素上設(shè)置 overflow 這個(gè) css 屬性。如果父元素的這個(gè)屬性設(shè)置為 auto 或者 hidden,父元素就會(huì)擴(kuò)展以包含浮動(dòng)。這個(gè)方法有著較好的語(yǔ)義性,因?yàn)樗恍枰~外元素。但是,如果需要增加一個(gè)新的 div 來(lái)使用這個(gè)方法,其實(shí)就和空 div 方法一樣沒(méi)有語(yǔ)義了。而且要記住,overflow 屬性不是為了清除浮動(dòng)而定義的。要小心不要覆蓋住內(nèi)容或者觸發(fā)了不需要的滾動(dòng)條。簡(jiǎn)單清除方法使用了一個(gè)聰明的 css 偽選擇符(:after)來(lái)清除浮動(dòng)。比起在父元素上
7、設(shè)置 overflow,只需要給它增加一個(gè)額外的類似于”clearfix”的類。這個(gè)類使用如下 css:.clearfix:after content: “?!?visibility: hidden;display: block;height: 0;clear: both;這會(huì)在清除浮動(dòng)的父元素之后應(yīng)用一點(diǎn)看不見的內(nèi)容。這不是全部?jī)?nèi)容,還需要一些額外的代碼來(lái)適應(yīng)那些老舊的瀏覽器。不同的情況需要不同的浮動(dòng)清除方法。以一個(gè)具有不同樣式塊的網(wǎng)格為例。為了從視覺(jué)上較好的把相似的塊聯(lián)系起來(lái),需要在必要的地方開啟新行,這里是顏色改變的地方。如果每個(gè)顏色組都有一個(gè)父元素的話,我們可以使用 overflow
8、或者 簡(jiǎn)單清除方法?;蛘?,在每組之間用一個(gè)空div方法。額外的 div 之前并不存在,可以自己試試來(lái)看看哪個(gè)方法好。浮動(dòng)的問(wèn)題浮動(dòng)因脆弱而飽受詬病。大多數(shù)的脆弱性來(lái)自于 IE6 及其一系列的浮動(dòng)相關(guān) bug。因?yàn)樵絹?lái)越多的設(shè)計(jì)師不再支持 IE6 了,你也可以不關(guān)注它了。不過(guò)對(duì)于那些要關(guān)注的人來(lái)說(shuō),這里有些大概。推倒是浮動(dòng)元素內(nèi)的元素(大多是圖片)比浮動(dòng)元素本身寬造成的現(xiàn)象。大多數(shù)的瀏覽器會(huì)在浮動(dòng)之外渲染圖片,但是不會(huì)有伸出來(lái)的部分影響其他布局。IE 會(huì)擴(kuò)展浮動(dòng)來(lái)包含圖片,精彩大幅度地影響布局。一個(gè)普遍的例子是突破伸出主內(nèi)容之外把側(cè)欄推到下面??焖傩拚捍_保不是圖片造成這種情況,使用 overflow:hidden 來(lái)切除多余的部分。雙倍邊距bug處理 IE6 時(shí),另一個(gè)需要記住的事情是,如果在和浮動(dòng)方向相同的方向上設(shè)置外邊距(margin),會(huì)引發(fā)雙倍邊距。快速修正:給浮動(dòng)設(shè)置 display:inline; 而且不用擔(dān)心,它依然是塊級(jí)元素。(在xhtml中每個(gè)對(duì)象而言,都擁有自己默認(rèn)的顯示模式。div對(duì)象的默認(rèn)顯示模式是display :block。從而使div成為一個(gè)塊狀容器,其默認(rèn)空間是占據(jù)整行空間。而span的對(duì)象的默認(rèn)顯示模式為display:inline 。而display屬性的用法是改變?cè)氐娘@示模式。)3
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 火鍋麻醬調(diào)料課程設(shè)計(jì)
- 錄播課課程設(shè)計(jì)思路
- 接單c語(yǔ)言課程設(shè)計(jì)
- 快遞設(shè)備培訓(xùn)課程設(shè)計(jì)
- 消防工程課程設(shè)計(jì)影城
- 2024版智能化工廠建設(shè)項(xiàng)目承包勞務(wù)工程合同2篇
- 2024版車庫(kù)使用權(quán)轉(zhuǎn)讓附帶車位增值服務(wù)合同3篇
- 2024年度司機(jī)職業(yè)風(fēng)險(xiǎn)防范服務(wù)保證合同3篇
- 2024版貸款合同資產(chǎn)抵押協(xié)議2篇
- 2024年度IT基礎(chǔ)設(shè)施運(yùn)維外包服務(wù)合同3篇
- 廣東省肇慶市2023-2024學(xué)年高二上學(xué)期期末教學(xué)質(zhì)量檢測(cè)試題 化學(xué) 含解析
- 護(hù)理課件題目教學(xué)課件
- 國(guó)有企業(yè)重組整合研究-以A集團(tuán)與B公司重組為例
- 2025年九年級(jí)中考數(shù)學(xué)一輪復(fù)習(xí)考點(diǎn)突破課件:第28講 概率
- 2024年大學(xué)試題(法學(xué))-知識(shí)產(chǎn)權(quán)法考試近5年真題集錦(頻考類試題)帶答案
- 2025屆天津市重點(diǎn)中學(xué)數(shù)學(xué)高一上期末復(fù)習(xí)檢測(cè)試題含解析
- 2024北京海淀區(qū)高三二模語(yǔ)文試題及答案
- 2024年客運(yùn)值班員(技師)職業(yè)鑒定理論考試題庫(kù)(含答案)
- 中華民族現(xiàn)代文明有哪些鮮明特質(zhì)?建設(shè)中華民族現(xiàn)代文明的路徑是什么?參考答案
- 2024-2030年中國(guó)脫毛膏市場(chǎng)消費(fèi)模式預(yù)測(cè)與未來(lái)銷售規(guī)模調(diào)研報(bào)告
- 關(guān)于加強(qiáng)中小學(xué)生欺凌綜合治理方案的實(shí)施辦法
評(píng)論
0/150
提交評(píng)論