如何在CSS中使这个框?
我看过几个教程,教导如何用箭头创建框,但在我的情况下,这些教程都不适合。
解决方法
我用周围的1px边框创建了你的元素。我正在使用一个< div>并利用
:before
and :after
pseudo-elements(
browser-support)。主矩形具有一个常规的1px边框,但三角形元素本质上是2个三角形,一个比另一个更深。
较浅的三角形位于较深的三角形的顶部,具有隐藏的作用,并向左偏移以显示下方较暗的三角形。由此产生的错觉是三角形本身的1px暗边框。
07002
其中一个答案实际上对如何实现这种三角效应有很好的解释:
07003
此外,这是您可以为边界所做的所有花哨的事情提供极好的参考(thanks to PSCoder):
> http://css-tricks.com/examples/ShapesOfCSS/
…这里是一个甜蜜的css生成器(thanks to David Taiaroa):
无论如何,这里是相应的代码:
#arrow { width: 128px; height: 100px; background-color: #ccc; border: 1px solid #999; position: relative; } #arrow:after { content: ''; position: absolute; top: 0px; left: 128px; width: 0; height: 0; border: 50px solid transparent; border-left: 12px solid #ccc; } #arrow:before { content: ''; position: absolute; top: 0px; left: 129px; width: 0; height: 0; border: 50px solid transparent; border-left: 12px solid #999; }
<div id="arrow"></div>
原文地址:https://www.jb51.cc/css/219933.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。