CSS实现空心尖角的示例代码 - 网站

CSS实现空心尖角的示例代码

分类:CSS进阶教程_CSS3技术文章 · 发布时间:2023-11-22 22:47 · 阅读:6719

web开发中,三角形指示箭头最为常见,本文就来介绍了CSS实现空心尖角的示例代码,具有一定的参考价值,感兴趣的可以了解一下

我记得之前刷面试题的时候,CSS面试题里面赫然有一题是“如何用CSS实现三角形”,我觉得这个问题确实很经典,我上的前端培训班当初就讲过。

大概思路如下:

先把这个元素(更多时候用的是伪元素)的宽高设为0,然后给它设置一个较大的border-width(大小根据三角形的大小来决定)。这样,4条边实际上都是三角形了。

然后根据三角形的方向和颜色,只设置其中的一个边框颜色为目标颜色,其他三个边框颜色都为透明色,三角形就出来了。

然后再随便设置一下定位,就可以做成类型对话框尖角的效果。

简单写一个示例:

   

结果昨天我看到UI图里面出现了空心的尖角,差点气死我:

本来这个三角形就是用4条边框硬挤出来的,哪里来的多余的边框用来描边?

最后我还是做到了,效果如下:

思路是这样的:

因为这里有描边,所以border要用在描边这里,那么三角形就不能用border来实现了

我这里实际上并不是三角形的,而是正方形的:

这样看就很明显了,实际上是放了一个正方形在这里,正方形的背景色跟里面的背景色一样,所以看不出来;

只给这个正方形设置了两条边框,颜色跟外圈的颜色一致;

然后给正方形旋转一个方向,让有边框的朝上,再微调一下位置,就可以了。

代码如下:(定位的代码我就省略了)

body.theme-deep .el-popper[x-placement^='bottom'] .popper__arrow::after, body.theme-deep .el-select-dropdown.el-popper[x-placement^='bottom'] .popper__arrow::after, body.theme-deep .el-dropdown-menu.el-popper[x-placement^='bottom'] .popper__arrow::after { width: 9px; height: 9px; border: none; border-top: 1px solid #0c84ff; border-right: 1px solid #0c84ff; background: #0b3277; transform: rotate(-45deg) translateX(2px) translateY(1px); }

修改前的效果是这样,实心的蓝色三角形。

到此这篇关于CSS实现空心尖角的示例代码的文章就介绍到这了,更多相关CSS空心尖角内容请搜索0133技术站以前的文章或继续浏览下面的相关文章,希望大家以后多多支持0133技术站! 

标签:
css 空心尖角

相关文章

CSS利用浮动实现多个盒子并排

CSS 中盒子并列是指在同一行或同一列中,将多个盒子按照一定的规则排列在一起的布局方式,本文主要介绍了CSS利用浮动实现多个盒子并排,感兴趣的可以了解一下

浅谈css溢出机制探究

在实际开发的过程中,内容溢出是经常见到的。这篇文章主要介绍了浅谈css溢出机制探究,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

CSS教程:网页文本渐变

注:本文由 Robin 翻译自 webdesignerwall(这个标题不知道该怎么翻译好, 希望大家能提提意见.) 你是否想不用photoshop来创建一个带渐变的标题文字吗? 这里用一个简单的css技巧来向你展示如何仅仅使用css和png图片来制造这种效果. 经测试这种方法适合大多数主流浏览器.当然

CSS取消移动端长按元素背景色的方法

在开发微信小程序的时候,发现有的元素长按之后,出现了讨厌人的背景色,这就很奇怪,就想把它去掉,本文给大家介绍CSS取消移动端长按元素背景色的方法,感兴趣的朋友一起看看吧

CSS 文字溢出:ellipsis在IE上不起效果的解决

设置text-overflow: ellipsis;即可实现文本溢出省略的效果,本文主要介绍了CSS 文字溢出:ellipsis在IE上不起效果的解决,具有一定的参考价值,感兴趣的可以了解一下

返回分类 返回首页