【发布时间】:2011-11-09 01:12:18
【问题描述】:
我想知道是否可以仅使用 css 来实现此效果。您可能会注意到,如果您稍微放大一点,图像有 4 个边框(没有底部阴影,我不想使用它)。
【问题讨论】:
我想知道是否可以仅使用 css 来实现此效果。您可能会注意到,如果您稍微放大一点,图像有 4 个边框(没有底部阴影,我不想使用它)。
【问题讨论】:
看起来最外边的边框已经用简单的边框效果的 CSS 完成了。最外面的边框是一个带有边框和一些填充以将图像推入内部的框。然后向下到灰色框,您可以使用另一个带有border: 3px double的框,因为边框颜色与背景颜色相同,并添加background-clip: padding-box,这样背景就不会覆盖双边框之间的白线。看起来该框上大约有一个 3px 的边框半径和一些填充,直到您到达实际图像,它周围只有一个白色边框。
一个简单的 CSS 示例:
span.imgbox {
background: #CCC;
background-clip: padding-box;
border: 3px double #CCC;
border-radius: 3px;
display: inline-block;
padding: 10px;
}
span.imgbox > img {
border: 1px solid #FFF;
}
这通常是涉及的内容,假设您不想要实际网站视图中显示的带有黑色边框的白框,而只想要图像本身中显示的边框。
【讨论】:
使用 box-shadow,您可以模拟多个边框。这正是您正在寻找的:
http://weston.ruter.net/2009/06/15/multiple-borders-via-css-box-shadow/
【讨论】:
border-radius 将适用于 所有 的框阴影,而此示例只需要圆形边框之一。
您可以混合使用 box-shadow、outline、border 和 padding/background-color...但这不会是跨浏览器..
border: 4px solid #000;
outline: 4px solid #f00;
background-color: #ff0;
padding: 10px;
box-shadow: 0px 0px 0px 4px #333;
我认为唯一的方法是嵌套元素。
【讨论】: