日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > CSS >内容正文

CSS

CSS块元素水平垂直居中的实现技巧

發布時間:2023/12/2 CSS 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CSS块元素水平垂直居中的实现技巧 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
針對之前遇到過的一些特殊樣式的實現,我今天做個總結,目的有二:一是將這些方法記錄下來,以便將來需要用到時查找使用。二為將這些大神們智慧的結晶發揚光大,讓廣大前端程序猿們能夠少走彎路。此貼為更新帖,以后若有好的css樣式技巧,小菜我會不定期更新。一、塊元素水平垂直居中對于一個塊元素的水平垂直居中,水平居中的方式不必多說,一般用margin:auto;等方法即可實現。而對于垂直居中,盡管有vertical-align:middle屬性,但是由于其只適用于table標簽中,而table標簽效果不好控制的特點大家都懂。。。因此,我們一般常用的方法是:將子級元素設定inline-block屬性,并將其行高屬性:line-height的值設定為與父級元素相同的高度。代碼如下html方面:
  • <body>??
  • <div?class="big">??
  • <div?class="small"></div>??
  • </div>??
  • </body> ?
  • css方面: 
  • .big??
  • {??
  • width:500px;??
  • height:500px;??
  • border:1px?solid?red;??
  • position:relative;??
  • }??
  • .small{??
  • width:200px;?/*自己元素寬高可任意設定?*/??
  • height:200px;??
  • position:absolute;left:0px;top:0px;rightright:0px;bottombottom:0px;??
  • margin:auto;??
  • background-color:#cc9900;??
  • ?} ?
  • 在上述代碼中,子級元素的寬高是任意設定的。都可以實現此元素在父級元素中水平垂直居中顯示。在父級元素中,我們用了position的relative屬性。在子級元素中,我們將它的position屬性設定為absolute后,將四個方向的值都設定為0px。并且讓他的margin值自適應。從審查元素中我們可以發現,如此設定后,子級元素的margin區域會充滿整個父級元素,并且左右margin值是相等的,上下margin值亦如此。但是這并不符合,當代碼數值有沖突時,優先解析top值及left值的規律。因為究竟是什么原理,小菜也不得而知。。如果有大神知曉,還望不吝賜教。但是這不失為一種好的辦法,希望大家活學活用。二、after偽類清浮動通常我們在對塊元素設浮動以后,需要對其清浮動,以免布局混亂。常見的清浮動方法主要有兩種:1)、在后面的子元素css中寫"clear:both;"。2)在浮動元素的父級元素中寫"overflow:hidden"。現在,我們可以用第三種方法,利用after偽類寫一個浮動屬性,這樣只要有需要清楚浮動的地方,我們就給其父元素加上這樣一個浮動屬性就可以了。代碼如下:
  • .clearfix:after??
  • {??
  • content:"";??
  • display:table;???/*利用table不允許浮動的屬性來清除浮動。也可以替換成"overflow:hidden;"*/???
  • clear:both;??
  • } ?
  • 這種方法有個好處,即可以將其寫入reset中,之后可以多次調用。

    總結

    以上是生活随笔為你收集整理的CSS块元素水平垂直居中的实现技巧的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。