网页制作 
首页 > 网页制作 > 浏览文章

CSS中三角形的绘制与巧妙应用实例详解

(编辑:jimmy 日期: 2024/11/2 浏览:3 次 )

网页中常见的一些三角形,无需制作成图片或者字体图标,使用CSS就可以直接画出来。如小米官网中:

CSS中三角形的绘制与巧妙应用实例详解

以及京东网页中的:

CSS中三角形的绘制与巧妙应用实例详解

那么这些三角通过是CSS怎么实现的呢?

三角的实现

我们可以通过将一个div容器的宽和高都设置为0,然后设置容器的边框来实现。

.box {
            height: 0;
            width: 0;
            border-color: wheat skyblue pink rgb(154, 121, 230);
            border-style: solid;
            border-width: 40px;
        }

通过以上代码可以实现如下效果:

CSS中三角形的绘制与巧妙应用实例详解

在上述代码中,盒子的宽和高必须为0,边框的颜色值依次为上、右、下、左,边框为实线,四条边框的宽度均为40px,从而得出4个等腰直角三角形。其中三角形的大小取决于边框的宽度, border-width的值越大,三角形也越大。

若只需要其中的一个三角形,则可以通过设置其他边框颜色透明来实现。如要实现以下效果:

CSS中三角形的绘制与巧妙应用实例详解

则可以设置border-top、border-bottom、border-left的颜色值为transparent 即可实现

 

.box {
            height: 0;
            width: 0;
            border-color: transparent skyblue transparent transparent;
            border-style: solid;
            border-width: 40px;
        }

那如果需要的不是等腰三角形又该如何实现呢?
上面提到过,三角形的大小取决于border-width的值的大小,上面讲四个方向的值设置了相同的值,因此得出的是等腰三角形。修改border-width的值则可以得出不同尺寸的直角三角形。

.box {
            height: 0;
            width: 0;
            border-color: transparent skyblue transparent transparent;
            border-style: solid;
            border-width: 80px 40px 0 0;
        }

则可得到如下三角形:

CSS中三角形的绘制与巧妙应用实例详解

小三角的应用

绘制除了三角形,就可以通过position定位实现。如开头提到的京东网页中显示价格的效果。

CSS中三角形的绘制与巧妙应用实例详解

该效果图中的梯形可以通过在矩形的的右侧定位一个如下图所示的直角三角形,并将三角形的背景色设置为白色即可实现。

CSS中三角形的绘制与巧妙应用实例详解

当然,小三角可以使用伪元素以精简网页结构,但伪元素是行内元素,需要先将其转换成行内块元素或者块级元素。

总结

用CSS绘制三角形需要注意以下几点:

  • 容器的width和height必须为0
  • 三角形的大小取决于border-width值的大小
上一篇:详解CSS清除图片下几像素空白间隙的方法
下一篇:详解css3中dispaly的Grid布局与Flex布局
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 SiteMap