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-compose中volumes的问题2. nignx - docker内nginx 80端口被占用3. docker api 开发的端口怎么获取?4. angular.js - Angularjs中点击事件传递参数 给class更换样式。5. javascript - swiper.js嵌套了swiper 初始设置不能向下一个滑动 结束后重新初始6. angular.js - angular内容过长展开收起效果7. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?8. weex - Android 原生Vue.js 使用 justify-content: flex-end; 不起作用9. python - Django ManyToManyField 字段数据在 admin后台 显示不正确,这是怎么回事?10. node.js - antdesign怎么集合react-redux对input控件进行初始化赋值

网公网安备