如何创建边框偏移?

Cas*_*ert 3 html css

嗨,我想知道如何从 div 偏移边框,例如图像: 在此处输入图片说明

所以灰色边框与图像大小相同,只是它偏移到了右上角。这是我的标记:

<figure class="col-md-10 col-md-offset-1">
        <img src="images/image.jpg" alt="Image">
        <figcaption>
            <p>
            Praesent at luctus erat, non finibus justo. 
            <a href="#">share</a>
            </p>
        </figcaption>
</figure><!-- End figure.col-md-10 -->
Run Code Online (Sandbox Code Playgroud)

Nar*_*k-T 5

使用伪元素非常简单。

例子

div {
  position: relative;
  margin: 50px 0 0 50px;
  display: inline-block;
}
img {
  display: block;
}
div::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  border: 2px solid gray;
  left: 30px;
  top: -30px;
  z-index: -1;
}
Run Code Online (Sandbox Code Playgroud)
<div>
  <img src="http://placehold.it/350x150" alt="">
</div>
Run Code Online (Sandbox Code Playgroud)

  • 值得注意的是,大多数浏览器不直接在 `img` 元素上支持 `:before` 和 `:after` 伪类。在这种情况下,需要一个包装器`div`(或其他元素)来实现效果,如本答案所示。 (2认同)