如何在图像上添加渐变边框(对角线边框)

3

我需要做类似这样的事情

picture

但是在图片上方,这是我的第一次尝试,但它不起作用。

http://jsfiddle.net/wo8gbhx3/17/

这是我的标记(现在)

HTML

<div class="testing">
    <ul>
        <li class="selected unavailable">
            <a href="#">
                <img src="http://placehold.it/25x25"/>
            </a>
        </li>
    </ul>
</div>

CSS

.testing ul {
    list-style: none;
}
.testing ul li {
    width: 25px;
    height: 25px;
    position: relative;
}
.testing ul li img {
    width: 100%;
    height: 100%;
}
.unavailable:before {
    position: absolute;
    border: 2px solid green; /* Just for testing */
    background:repeating-linear-gradient( 150deg, #FFF, #FFF 16px, #000 18px);
}
1个回答

3
你需要像这样的东西。

.testing ul {
  list-style: none;
}
.testing ul li {
  width: 250px;
  height: 250px;
}
.testing ul li img {
  width: 100%;
  height: 100%;
  display: block;
}
.unavailable {
  position: relative;
}
.unavailable a:after {
  content: '';
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  border: 2px solid green;
  /* Just for testing */
  background: repeating-linear-gradient(150deg, transparent, transparent 16px, #000 18px);
  z-index: 2;
}
<div class="testing">
  <ul>
    <li class="selected unavailable">
      <a href="#">
        <img src="http://placehold.it/200x200" />
      </a>
    </li>
  </ul>
</div>


可能会受益于使用0的rightbottom,以及没有宽度和高度,或者您可以添加box-sizing:border-box。这可以防止右侧和底部出现不美观的白色间隙。 - Joseph Marikle

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接