css三重边框?

时间:2013-03-14 00:15:52

标签: css responsive-design border

您好我正在尝试使用css创建三重边框。现在我得到的是两个边框,但第二个边框并没有完全围绕元素(div.container#main)。

我一直关注这个blog postJSFiddle

任何有关让边框完全绕过元素的帮助都会很棒。

1 个答案:

答案 0 :(得分:3)

所以基本上问题是你使用位置aboslute并从worng元素计算东西。

当指定高度或元素具有内容时,某些东西绝对定位于仅增益高度。在这种情况下,解决方法是分配topbottom值,这将基本上使元素成为开头。您忘记了bottom值。添加它给我们这个:

http://jsfiddle.net/J3e9R/2/

但是现在你会注意到元素会移到视图端口的底部。这是因为没有定位父(相对,绝对,静态),它默认为顶级元素作为定位的上下文。

为了解决这个问题,我们可以添加一个额外的包装元素并将其置于相对位置,或者我们可以将边框样式移动到div.row;无论哪种方式,技术都是相同的,只取决于您是否可以添加另一个包装器或div.row是否适用于您的情况。所以这就是:

http://jsfiddle.net/J3e9R/3/

现在你可以看到我们实际上内边框与盒子的尺寸一致。但现在我们的立场已经结束。这是因为我们不是从外部元素#main计算我们的偏移,而是从内到外工作,所以我们需要反转我们的测量结果:

http://jsfiddle.net/J3e9R/4/

好的,现在我们又回到了原始盒子外边缘的订单,所以我们只需将它带到我们外边框的中间,所以我们将测量值改为大约一半,最后给出我们想要什么:

http://jsfiddle.net/J3e9R/1/