代码如下,用 vue 写的
https://gist.github.com/QuDump/61dea44d743f2d3ec7c8dcbd5dca38ad
我只照着 V2EX 的 css 设置的,但是无论怎么调整,img 的高度总是比设置的高度大 4px。折腾了一个晚上了,都没有弄明白原因。 有没有大神能指导一下
1
ferrum 2017-12-19 23:29:12 +08:00 via iPhone
没看代码,但我猜说因为元素固定的行高导致的。试试把 img 的父元素行高设置为零。
|
2
ferrum 2017-12-19 23:29:51 +08:00 via iPhone
不是,是 img 的行高。
|
4
QuDump OP @ferrum 不好意思,描述有点问题。img 的父元素是 td, 假设 img 的高度设为 48px,td 的高度就变成了 52px,F12 查看是 img 顶端对齐了,下面多出来 4 像素
|
5
macroideal 2017-12-19 23:48:27 +08:00 via iPhone 1
没看代码,是不是 box-size 的问题??
|
6
ferrum 2017-12-20 00:00:16 +08:00 1
@QuDump 你这代码我都不好测试啊。试试在 Dev Tools 里把 img 外面的 a 的行高设置为 0,或者 img 的设置为 0。
我以前也遇过类似问题,解决方案就是上面的。 参考: https://www.zhihu.com/question/21558138 |
7
zybzzc 2017-12-20 00:55:48 +08:00 via Android 1
父元素 font-size 设为 0,我猜的
|
8
POPOEVER 2017-12-20 01:26:23 +08:00 1
试试 img { display: inherit;}
|
9
POPOEVER 2017-12-20 01:32:40 +08:00
是因为 img 默认是 inline-block,inline-block 就是会有这个间隙问题,通常就是 7 楼说的设置 font-size: 0; 我是前阵子做一个布局的时候偶然发现可以用 display: inherit; 来解决的,不过不保证你能用哦
|
10
QuDump OP |