css - div display: inline-block; 置中?
問題描述
.layout{ width: 760px; margin: 150px auto 0 auto;}.layout2{ width: 250px; display: inline-block;}
<p class='layout'> <p class='layout2'> 1 </p> <p class='layout2'> 2 </p> <p class='layout2'> 3 </p></p>
請問如何讓layout2 p能夠置中對齊呀?另外若是layout改成750寬 layout2設250寬第三個p會跑到下面去....
問題解答
回答1:代碼貼上:
<!DOCTYPE html><html><head> <title></title> <style type='text/css'> .layout{ width: 750px; margin: 150px auto 0 auto; background: #cccccc; font-size: 0;}.layout2{ width: 250px; display: inline-block; *display: inline;; *zoom:1; font-size: 20px; background: #666666; text-align: center;} </style></head><body><p class='layout'> <p class='layout2'> 1 </p> <p > 2 </p> <p class='layout2'> 3 </p></p></body></html>
如上 設置父元素font-size:0前提是你必須設置 子元素 也就是inline-block的font-size 設置好字體 要不然 就什么都不會顯示
參考文獻:http://sentsin.com/web/23.html
回答2:有空格,父元素中設置font-size:0
回答3:inline-block有間距,需要去掉參見這篇文章http://www.zhangxinxu.com/wor...
layout2居中對齊是什么意思?
回答4:補充一點吧。其實不用設置font-size:0;
<p style='background: red;'>1</p><p style='background: yellow;'>2</p><p style='background: green;'>3</p>
可以這麼寫。inline-block元素標籤間的空格導致的inline-block之間存在間隙。
<p class='layout2'> 1 </p><!-- --><p class='layout2'> 2 </p><!-- --><p class='layout2'> 3 </p>
或者這麼寫,用註釋填充你的格式。
這樣就不需要添加額外樣式了,畢竟代碼上線的時候註釋是會被壓縮掉的。
回答5:其實一個浮動就可以解決
.layout {width: 750px;margin: 0 auto;margin-top: 150px;background-color: red; } .layout2 {width: 250px;background-color: blue;float: left;text-align: center; }回答6:
空格也是字符。在inline-block的父元素上設置font-size:0;即可消除。
相關文章:
1. python bottle跑起來以后,定時執行的任務為什么每次都重復(多)執行一次?2. javascript - vue2.0中,$refs對象為什么用駝峰的方式獲取不到屬性?3. javascript - vue2如何獲取v-model變量名4. javascript - 求幫助 , ATOM不顯示界面!!!!5. html5 - HTML代碼中的文字亂碼是怎么回事?6. python - 爬蟲模擬登錄后,爬取csdn后臺文章列表遇到的問題7. javascript - ios返回不執行js怎么解決?8. javascript - 能否讓vue-cli的express修改express重啟服務9. javascript - angular使從elastichearch中取出的文本高亮顯示,如圖所示10. mysql - 分庫分表、分區、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處
