position有四個屬性
1.static:預設。位置設定為 static 的元素,它始終會處於頁面流給予的位置(static 元素會忽略任何 top、bottom、left 或 right 宣告),相當於沒有定位,基本上用不到這個屬性。
2.relative:位置被設定為 relative 的元素,可將其移至相對於其原來位置的地方,原來的位置遺留空白區域。
3.absolute 位置設定為 absolute 的元素,可位置相對於最近的已定位父元素(一般與用),如果元素沒有已定位的父元素,那麼它的位置相對於window。已定位的元素會脫離文件流(相當於浮動),不佔據空間。
4.fixed 位置被設定為 fixed 的元素,可定位於相對於瀏覽器視窗的指定座標。對於瀏覽器的位置是固定的。
position定位的元素的位置可以用通過 「left」, 「top」, 「right」 以及 「bottom」 屬性進行規定。
但我們也可以用transform: translate()對其位置進行調整,兩者有何區別?
left right top bottom定位的使用:必須定義在position屬性的元素下使用
定位機制:相對于父元素的位置進行定位。
使用方式 left:20px 或者left:50%,前者是距離父元素20px,後者是距離父元素寬度50%的距離。
注意點: 一般left和right在乙個樣式是只能使用其一,不能left和right都設定,要麼使用left就不使用right,要麼使用right就不使用left,如果left和right均使用將會出現相容問題,乙個物件設定了靠左left多少距離,自然右邊距離自然就有了所以無需設定左邊,相同道理,top和bottom對乙個物件只能使用其一。
transform屬性應用於元素的2d或3d轉換,transform: translate()則是transform中的一種2d平面移動,無需在position屬性的元素下使用。
定位機制:相對於自己原來位置進行移動。
使用方式transform: translate(20px) 或者transform: translate(50%),前者是向左移動20px,後者是向左移動自己元素寬度的50%的距離。
注意點:多個transform屬性新增在同一元素時後宣告的會覆蓋前面的,而不是原來的基礎上再次移動。
div
結果是向右移動100px而不是回到原點。
再給多個不同位置的相同元素定位時 用left right top bottom定位會把所有元素重疊而transform則不會。
position :fixed 運用場景:
video
float與position的使用
源 在用div css做網頁的時候float是最常用的,相對於position比較好控制一點。float分為 float left float right float none 一般情況下只用前兩個。浮動從字面意思就知道他是把該層浮起來,在瀏覽器預設的情況下這個位置上是空的,所以在使用float布局...
MYSQL year型別的使用與注意點!
mysql的日期與時間型別 分為time date datetime timestamp year,主要總結下year的用法 1 型別支援 year 與 year 4 注意無year 2 的定義方式,否則報錯 err 1818 supports only year or year 4 column....
position與float屬性的使用
1 使用float時,可以說是用於布局,取值主要有left right none。就是將該塊的元素浮動起來,在瀏覽器預設的情況下,該元素的位置是為空的,即脫離了文件流而存在,如果有其他元素,那麼這些元素會將該元素在瀏覽器中本身的位置所佔據,進而將該空白部分填充。如果元素浮動了,那麼它會對其後面的元素...