CSS定位機(jī)制:
position屬性拿來定位用,有四個(gè)屬性武学。
1.static
正常默認(rèn)值祭往,不脫離文檔流。
2.relative
原標(biāo)簽不脫離文檔流火窒,占據(jù)原有位置硼补,偏離后的標(biāo)簽,會覆蓋其他標(biāo)簽熏矿,偏離位置以標(biāo)簽原文檔流的位置為參考坐標(biāo)已骇。
3.absolute
標(biāo)簽脫離文檔流,偏離位置以存在position值的父元素為參考坐標(biāo)票编,如果不存在褪储,則以body標(biāo)簽為參考坐標(biāo)。
4.fixed
生成絕對定位的元素慧域,相對于瀏覽器窗口進(jìn)行定位鲤竹。
注:對于使用了position屬性中非static標(biāo)簽的元素,使用top,right,bottom,left和z-index來設(shè)置上昔榴,右辛藻,下,左和重疊優(yōu)先級互订。非position屬性的標(biāo)簽會忽略這5個(gè)屬性吱肌。
z-index詳解:
元素可擁有負(fù)的 z-index 屬性值。
該屬性設(shè)置一個(gè)定位元素沿 z 軸的位置仰禽,z 軸定義為垂直延伸到顯示區(qū)的軸氮墨。如果為正數(shù)纺蛆,則離用戶更近,為負(fù)數(shù)則表示離用戶更遠(yuǎn)规揪。
float
浮動的問題:
1.父元素的高度無法被撐開犹撒,影響與父元素同級的元素
2.與浮動元素同級的非浮動元素會跟隨其后
3.若非第一個(gè)元素浮動,則該元素之前的元素也需要浮動粒褒,否則會影響頁面顯示的結(jié)構(gòu)
float存在四個(gè)值识颊,left,right,none,inherit默認(rèn)是none.
浮動元素會生成一個(gè)塊級框。(不會換行奕坟,除非空間不夠祥款。)
如果浮動非替換元素,則要指定一個(gè)明確的寬度月杉;否則刃跛,它們會盡可能地窄。
設(shè)置float會使得標(biāo)簽脫離普通文檔流苛萎,直到它的右邊緣碰到包含框的右邊緣桨昙,使得塊級元素會無視標(biāo)簽的位置,而產(chǎn)生重疊的現(xiàn)象腌歉,然而文字卻不會無視浮動蛙酪,會圍繞在浮動周圍,具體浮動的位置要看瀏覽器的渲染情況翘盖,如第一個(gè)元素為塊級元素桂塞,第二位右浮動元素,則右浮動元素會存在第二行馍驯。
clear
clear存在屬性值為none,left,right,both.
clear存在是為了清除浮動阁危,注:清除浮動時(shí),添加clear屬性只能對自己有效汰瘫。
到底是清除左邊還是右邊狂打,則需要查看下,瀏覽器渲染的順序混弥。
overflow
取值一般為hidden和scroll趴乡。
scroll:內(nèi)容會被修剪,但是瀏覽器會顯示滾動條以便查看其余的內(nèi)容剑逃。
hidden:內(nèi)容會被修剪浙宜,并且其余內(nèi)容是不可見的官辽。
visible:默認(rèn)值蛹磺。內(nèi)容不會被修剪,會呈現(xiàn)在元素框之外同仆。
placeholder
在文本框中存在一個(gè)默認(rèn)值萤捆,獲得焦點(diǎn)的時(shí)候消失。