CSS常見的讓元素水平居中顯現辦法(一) |
發布時間:2024-08-02 文章來源:本站 瀏覽次數:828 |
用CSS讓元素居中顯現并不是件很簡單的事情—同樣的合法CSS居中設置在不同瀏覽器中的表現行為卻各有千秋。讓咱們先來看一下CSS中常見的幾種讓元素水平居中顯現的辦法。
1.運用主動外邊距完成居中
CSS中首選的讓元素水平居中的辦法便是運用margin特點—將元素的margin-left和margin-right特點設置為auto即可。在實踐運用中,咱們可認為這些需求居中的元素創建一個起容器作用的div。需求特別注意的一點便是,有必要為該容器指定寬度:
div#container {
margin-left: auto;
margin-right: auto;
width: 168px;
}
在大多數主流瀏覽器中,這種辦法都十分有用,即使是Windows平臺上的IE6,在其規范兼容形式(compliance mode)下也能夠正常顯現。但不幸的是,在更低版別的IE中,這種設置卻并不能完成居中作用。所以若想在實踐項目中運用這種辦法,那么就要確保用戶的IE瀏覽器版別不低于6.0。
雖然在支撐上不盡如人意,但大多數設計師都主張盡可能地運用這種辦法。該辦法也被認為是在各種用CSS完成元素水平居中辦法中正確、合理的一種。
2.運用text-align完成居中
另一種完成元素居中的辦法是運用text-align特點,將該特點值設置為center并應用到body元素上即可。這種做法是徹里徹外的hack,但它卻能兼容大多數瀏覽器,所以在某些情況下也自然必不可少。
之所以說它是hack,是因為這種辦法并沒有將文本特點應用到文本上,而是應用到了作為容器的元素上。這也給咱們帶來了額外的工作。在創建好布局有必要的div之后,咱們要按照如下代碼為body應用text-align特點:
body{
text-align:center;
}
之后會出現什么問題嗎?body的所有子孫元素都會被居中顯現。
因而,咱們就需求用再寫一條規矩,讓其間的文本回到默認的居左對齊:
p {
text-align:left;
}
可以想象這條附加的規矩將帶來一些不便。別的,真正徹底遵從規范的瀏覽器并不會改變容器的位置,而只會讓其間的文字居中顯現。 |