css - 關于table里面元素有display:inline-block的一些疑惑
問題描述
<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Document</title> <style>body{font-size:14px;}.block{width:100%;background-color:red;}.a{display: table;width:100%;height:100%;}.b{display: table-cell;vertical-align: middle;}.c{display:inline-block;background-color:yellow;width:100px;height:8px;} </style></head><body> <p class='block'><p class='a'> <p class='b'><p class='c'></p> </p></p> </p></body></html>
如上代碼,有兩個問題想請問一下:1.當.c的height為0的時候,為什么.b會有14的高度?2.當.c的height不為0的時候,為什么距底邊有間隙?
問題解答
回答1:font-size的原因, .c高度為0時, 將.b的font-size也設置成0
inline和inline-block都會有這個問題, 可能的原因是這兩個屬性, 會將前后的空格,或者解析成字符, 解決方法, 將.b的font-size設置成0, 或者將.c的inline-block屬性換成block屬性
回答2:.c{display:inline-block;background-color:yellow;width:100px;height:0;}
是這樣啊,c的高度為0時,b的高度為16,沒你說的14啊?谷歌測試
相關文章:
1. Docker for Mac 創建的dnsmasq容器連不上/不工作的問題2. javascript - QWebEngineView 如何爬 angular 的動態數據?3. javascript - 使用angular 的ui-sref 中出現了中文參數,點擊跳轉后瀏覽器的地址欄里出現轉義后的%AE....%a%44. java - ConcurrentHashMap中的get()方法為什么可以不加鎖?5. java - 郵箱如何發送html內容6. html5 - 這個代碼顯示功能如何實現?7. javascript - 用JS 七牛上傳圖片出現文件已存在的錯誤(file exists)8. java - 字節流轉成字符串之后,在通過字符串轉成字節流后的文件為什么會不一樣?9. css3 - 圖片等比例縮放10. java - 一段遞歸代碼的問題
