【问题标题】:css shadows not applied correctly in bottom of images图像底部未正确应用 css 阴影
【发布时间】:2011-10-05 18:48:02
【问题描述】:

我正在使用此 html/css 制作主页:http://jsfiddle.net/2qWYf/5/

我无法弄清楚为什么我应用于图像的阴影开始在图像底线下方显示一些像素。

在右侧反而没问题(!?!)为什么?

如何解决这个问题?

非常感谢,亚历山德罗

【问题讨论】:

    标签: html image css shadows


    【解决方案1】:

    这是因为您将阴影应用到图像(和链接)周围的元素,这就是该元素的大小。

    反过来,为什么该元素是该大小的原因是因为图像是放置在文本块基线上的内联元素。图片下方的空间是基线下方的间距,用于悬挂gj 等字符。

    最稳定的处理方法是将图像转换为块元素:

    .homepageimage img { display: block; }
    

    (周围的锚元素已经是块元素,因为您已对其应用float: left;,否则您也需要将其转换为块元素。)

    【讨论】:

    • 很好的修复!非常感谢!
    【解决方案2】:

    line-height: 0px 添加到.homepageimage a (demo)。

    【讨论】:

    • @Matt Ball - 世界上并非所有事物都需要演示! :)
    • 谎言,该死的谎言。和统计数据。
    • 啊,废话,我的个人资料说我对你投了反对票,但我什至不记得这样做了(或看到任何原因)。可能是意外,抱歉。
    【解决方案3】:

    可能有很多方法可以解决这个问题,但是,有两个对我来说很突出:

    只需将 200px 的高度添加到 .homepageimage。示例:

    .homepageimage {
        height: 200px;
    }
    

    ...或将margin-bottom: -3px; 添加到.homepageimage a。示例:

    .homepageimage a {
        text-decoration: none;
        float: left;
        margin-bottom: -3px;
    }
    

    【讨论】:

    • 我没有投反对票,但如果其他内容发生更改(如正文字体大小),则无法保证这是一种技巧
    • @cwolves:使用“height 方法”似乎可以正常工作,即使更改了字体
    • 以前没有! :) 仍然不是一个很好的解决方案,因为它依赖于 200px 高的图像。解决问题比修补问题更好
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-01
    • 2018-12-27
    • 2015-01-20
    • 2011-10-04
    • 2020-04-21
    • 1970-01-01
    相关资源
    最近更新 更多