摘要:轉自個人博客本博客討論居中情況設定為總寬度不定內容寬度不定的情況。改變大小時,仍然居中。寬高改變時,不再是居中效果。配合優點居中元素不對其他元素產生影響。水平居中當父元素設置時,子元素為,默認為內容寬度。
轉自個人博客
本博客討論居中情況設定為總寬度不定,內容寬度不定的情況。(改變大小時,仍然居中)。
特別說明:在元素設置position:absolute;來設置居中效果時,除去博客下介紹的css3方法外,還可以使用負的margin來居中,這樣解決了兼容性的問題,但是只適用于寬高已知的情況(因為負的偏移量為元素寬高的一半)。寬高改變時,不再是居中效果。
在這些布局中的子元素,因為其屬性設置,都默認為內容寬度。
本博客所有居中的例子,只討論css的實現,html代碼統一如下:
1. 水平居中 1.1 inline-block配合text-aligndemo
.parent{ text-align: center; } .child{ display: inline-block; }
1.2 table配合margin優點:兼容性非常好,只需要添加只需要在子元素的css中添加*display:inline和*zoom:1就可兼容到IE6、7;缺點:內部文字也會水平居中,需消除影響。
.child{ display:table; margin: 0 auto; }
1.3 abasolute配合transform優點:設置特別簡單,只需對子元素進行設置,支持IE8+,需支持IE6,7時,可更換子元素為表格結構。
.parent{ position:relative; } .child{ position:absolute; left:50%; transform: translateX(-50%); }
2. 垂直居中 2.1 table-cell配合vertical-align優點:居中元素不對其他元素產生影響。缺點:CSS3新屬性支持IE9+,低版本瀏覽器不支持。
.parent{ display: table-cell; vertical-align:middle; }
2.2 absolute配合tranform優點:設置簡單,只需對父元素進行設置,兼容到IE8+,需兼容地版本瀏覽器時,可更換div為表格結構。
.parent{ position:relative; } .child{ position:absolute; top: 50%; transform: translateY(-50%); }
3. 水平+垂直居中 3.1 inline-block配合text-align加上table-cell配合vertical-align優點:居中元素不對其他元素產生影響。缺點:CSS3新屬性支持IE9+,低版本瀏覽器不支持。
.parent{ display: table-cell; vertical-align:middle; text-align:center; } .child{ display: inline-block; }
3.2 absolute配合transform優點:綜合前兩中方法,兼容性好!支持IE8+,低版本瀏覽器也好兼容。缺點:設置較為復雜。
.parent{ position: relative; } .child{ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); }
4. 全能的flex優點:居中元素不對其他元素產生影響。缺點:CSS3新屬性支持IE9+,低版本瀏覽器不支持。
css3新增布局屬性,布局簡單,強大,性能略差,只支持IE10+,在移動端使用較多。
4.1 水平居中/*當父元素設置display: flex;時,子元素為flex-item,默認為內容寬度。*/ .parent{ display: flex; justify-content: center; } /* 在設置子元素為margin: 0 auto;時,可刪除父元素的justify-content: center;同樣可以達到居中效果*/ /* .child{ margin: 0 auto; }*/4.2 垂直居中
.parent{ display: flex; align-items: center; }4.3 水平垂直居中
.parent{ display: flex; justify-content: center; align-items: center; } /*如同flex布局的第一部分一樣這里也可以對子元素進行下面的設置:同時刪除上面的除去display外的其他屬性*/ /* .child{ margin:auto; } */
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/111267.html
摘要:在通常情況下,對那些需要居中的元素來說,其尺寸往往是由其內容來決定的。雖然沒有垂直居中效果,但也是完全可以接受的。的另一個好處在于,它還可以將匿名容器即沒有被標簽包裹的文本節點垂直居中。 主要摘自:《CSS 揭秘》,強烈推薦的一本書。 44 年前我們就把人類送上月球了,但現在我們仍然無法在 CSS 中 實現垂直居中。——James Anderson(https://twitter.co...
摘要:絕對底部前端掘金來自國外的設計達人,純,可以實現當正文內容很少時,底部位于窗口最下面。有效解決圖片使用單位邊角缺失的問題前端掘金起因在移動端使用布局時圖片也需要用單位。 CSS 絕對底部 - 前端 - 掘金來自國外的設計達人,純CSS,可以實現: 當正文內容很少時,底部位于窗口最下面。當改變窗口高度時,不會出現重疊問題。甚至,創造該CSS的人還專門成立一個網站介紹這個CSS底部布局方案...
閱讀 3813·2023-04-25 19:07
閱讀 3560·2021-11-22 12:02
閱讀 3143·2021-10-12 10:11
閱讀 3915·2021-09-03 10:49
閱讀 2894·2019-08-30 13:21
閱讀 3007·2019-08-30 11:14
閱讀 2093·2019-08-29 15:40
閱讀 2878·2019-08-28 18:29