垂直對齊和定位 錨點

2021-10-02 11:56:29 字數 1497 閱讀 8511

1.垂直對齊  vertical-align:預設值baseline      居中middle

行高的頂端top 文字的頂線 text-top

行高的底部bottom 文字的底線 text-bottom

必須是行內塊元素或設定了display:inline-block

2.定位position

(1)absolute 絕對定位 脫離文件流 多個元素同時進行定位,後面的元素在最上面,可以通過z-index改變層疊順序,預設值是0,數值越大越靠上 參照物為瀏覽器的第一屏,父元素(前提是父元素有定位)

(2)relative 相對定位 不脫離文件流 多個元素進行同時定位,不會發生層疊,後面的元素在上面,也可通過z-index改變層疊順序。相對定位之後的元素即使移動了原始的位置,但是原有的位置還是存在 參照物為自己的初始位置

(3)fixed 固定定位 脫離文件流 多個元素同時進行定位,後面的元素在最上面,可以通過z-index改變層疊順序,預設值是0,數值越大越靠上 參照物是瀏覽器的當前視窗,並且移動滾動條的時候該元素是不動的

3.實現乙個元素水平垂直居中

(1)給父元素新增line-height和text-align:center

給子元素新增vertical-align:middle;display:inline-block

(2)給居中元素新增定位position:absolute/fixed;top:50%;left:50%;margin-top:-高度的一半;margin-left:-寬度的一半

(3)給居中元素新增position:absolute/fixed;margin:auto;top:0;left:0;right:0;bottom:0;

(4)用margin、padding

(5)使用彈性盒子

4.text居中和margin居中的異同?

(1)text-align 是文字對齊,可以讓文字居中或行內或行內塊元素水平居中,在父元素內新增

(2)margin:0 auto 可以讓乙個有寬度的塊元素水平居中

5.標籤巢狀規則

(1)預設情況下,塊元素可以包含行內元素和行內塊元素,行內不能包塊

(2)p只能包行內和行內塊元素,不能包塊和自己

(3)h1-h6不能包自己,也不能彼此之間互包,但可以包其他塊元素或行內元素或行內塊元素

6.包含塊

(1)什麼是包含塊:是父元素並且父元素有定位;瀏覽器

(2)包含塊的觸發條件:當父元素有position/fixed/relative的時候,父元素就是包含塊;當父元素沒有定位的時候,包含塊就是瀏覽器

7.錨點

作用:同乙個頁面不同位置進行跳轉

語法:"#id名字">

《標籤 id="">

div垂直對齊

今天在除錯頁面的時候發現div不支援vertical align。查詢了一下,可以通過下面解決。lorem ipsum dolor sit amet,consectetuer adipiscing elit.etiam tincidunt,sapien sit amet semper molesti...

css垂直對齊

在css中,行框的高度總是足以容納它包含的所有行內級框,當乙個行內級框 b 的高度小於包含它的行框高度時,則由 vertical align屬性 來決定b在行框中垂直對齊的位置。因此,vertical align屬性只對行內級元素有效,對塊級元素無效。並且,該屬性不能被子元素繼承。在垂直對齊時,行內...

垂直對齊vertical align

body img src 顯示和隱藏 tu.png alt 和文字是預設基線 baseline 對齊,這樣會導致下方出現3px的空隙,解決方法是使用其他的對齊方式,比如middle,top等等,vertical align大多是行內塊和文字的對齊方式,比如img和input body 1 和文字是預...