您现在的位置是:网站首页> 编程资料编程资料
CSS中三角形的绘制与巧妙应用实例详解纯CSS3+DIV实现小三角形边框效果的示例代码通过CSS边框实现三角形和箭头的实例代码CSS3 SVG实现三角形场景图中的日落月出,飞鸟归林动画效果源码用CSS画一个带阴影的三角形的示例代码老生常谈 使用 CSS 实现三角形的技巧(多种方法)
2021-09-03
1088人已围观
简介 这篇文章主要介绍了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; }通过以上代码可以实现如下效果:

在上述代码中,盒子的宽和高必须为0,边框的颜色值依次为上、右、下、左,边框为实线,四条边框的宽度均为40px,从而得出4个等腰直角三角形。其中三角形的大小取决于边框的宽度, border-width的值越大,三角形也越大。
若只需要其中的一个三角形,则可以通过设置其他边框颜色透明来实现。如要实现以下效果:

则可以设置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; }则可得到如下三角形:

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

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

当然,小三角可以使用伪元素以精简网页结构,但伪元素是行内元素,需要先将其转换成行内块元素或者块级元素。
总结
用CSS绘制三角形需要注意以下几点:
- 容器的width和height必须为0
- 三角形的大小取决于border-width值的大小
到此这篇关于CSS中三角形的绘制与巧妙应用的文章就介绍到这了,更多相关css三角形绘制内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!
相关内容
- 详解css3中dispaly的Grid布局与Flex布局css3中transform属性实现的4种功能详解CSS3.0(Cascading Style Sheet) 层叠级联样式表纯CSS3实现div按照顺序出入效果CSS3实现列表无限滚动/轮播效果css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效CSS3实现的侧滑菜单CSS3实现的3D隧道效果用CSS3画一个爱心css3 实现文字闪烁效果的三种方式示例代码六种css3实现的边框过渡效果
- css等比例分割父级容器(完美三等分)的实现CSS 容器背景 10 种颜色渐变Demo(linear-gradient())CSS将img图片填满父容器div自适应容器大小的实现方法CSS实现宽高等比自适应容器的方法css轻松实现固定比例的块级容器css实现图片自适应容器的示例代码css让容器水平垂直居中的7种方式用纯CSS实现容器内图片上下左右居中CSS 数字和字母将容器撑大问题解决
- 详解如何使用CSS选择所有子元素CSS 选择所有子元素添加样式的方法CSS子元素选择父元素的实现举例讲解CSS的子元素选择器用法使用css属性:nth-child(n)匹配选择第n个子元素css匹配选择属于其父元素的第N个子元素的方法CSS子元素选择器使用介绍
- css选中父元素下的第一个子元素(:first-child)纯CSS让子元素突破父元素的宽度限制css子元素相对父元素进行定位的实现CSS子元素跟父元素的高度一致的实现方法CSS子元素选择父元素的实现CSS让子容器超出父元素(子容器悬浮在父容器效果)css匹配选择属于其父元素的第N个子元素的方法
- 浅谈css动画是否会被js阻塞浅谈CSS到底会不会阻塞页面渲染css加载会造成阻塞吗详解css加载会造成阻塞吗
- HTML+CSS+JS实现堆叠轮播效果的示例代码CSS3简易切割轮播图的实现代码CSS3全屏图文幻灯片自动轮播特效代码CSS3 transition 实现通知消息轮播条纯css实现轮播图banner自动轮换效果纯CSS实现的图片轮播(幻灯片)效果代码原生CSS实现文字无限轮播的通用方法
- 浅谈css当中:focus-within的好玩之处CSS :focus-within的具体使用
- css解决浮动导致父元素高度坍塌的几种方法CSS清楚浮动clear:both的实例代码详解CSS布局中浮动问题的四种解决方案关于CSS浮动与取消浮动的问题
- css下div下同行多元素右对齐div中加入span右对齐后出现换行显示两种解决思路
- css实现元素垂直居中显示的7种方式CSS实现子元素div水平垂直居中的示例css常用元素水平垂直居中方案css实现元素垂直居中的常用方法(总结)利用css设置元素垂直居中的解决方法汇总css实现元素水平垂直居中常见的两种方式实例详解DIV+CSS垂直居中一个浮动元素css3设置box-pack和box-align让div里面的元素垂直居中html元素水平居中、垂直居中、水平垂直居中于其父级元素的方法网页布局 CSS简单实现垂直居中-CSS教程-网页制作-网页教学网
