CSS中居中是一個經常會用到的樣式屬性,而全體居中則是其中比較特殊和常使用的一種。全體居中的作用就是讓元素在其父元素中水平和垂直居中,不管它在父元素中的位置如何,都能夠達到居中的效果。
.parent{ position: relative; /*相對定位*/ } .child{ position: absolute; /*絕對定位*/ top: 50%; /*上部偏移50%*/ left: 50%; /*左部位移50%*/ transform: translate(-50%, -50%); /*以自身寬高的一半向左上位移*/ }
上面的代碼中,parent是父元素,child是需要居中的子元素。我們通過將父元素設置為相對定位,將子元素設置為絕對定位,并且上部偏移和左部偏移都為50%,使子元素到達其父元素中心點的位置。
但是,只應用上述代碼會出現一個問題,當子元素的寬度和高度大于其父元素時,顯然這種方法就無法完全居中了,因為它只是以子元素的寬度和高度的一半向左上方偏移。如果子元素太大了,那么依然可能造成居中不準確的問題。
針對這個問題,我們可以使用CSS3的transform屬性,將子元素向左上方平移自身寬度和高度的一半,這樣就可以達到完美的居中效果。
.parent{ position: relative; /*相對定位*/ } .child{ position: absolute; /*絕對定位*/ top: 50%; /*上部偏移50%*/ left: 50%; /*左部位移50%*/ transform: translate(-50%, -50%); /*以自身寬高的一半向左上位移*/ }
綜上所述,全體居中是一種方便好用的樣式屬性,可以自適應各種尺寸的屏幕和瀏覽器,為我們的網頁布局帶來更多選擇。希望以上內容能對大家有所幫助。
上一篇css全局優先
下一篇mysql新增用戶并賦權