网站首页 > 知识剖析 正文
前端开发经常会遇到三角形的装饰,今天我们来用css实现。还是一样先上全代码,在逐步解析。
全代码展示
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<style>
.title {
position: relative;
padding-left: 16px;
}
.title::before {
content: "";
position: absolute;
border-width: 8px;
border-style: solid;
border-color: transparent transparent transparent red;
top: 50%;
left: 0;
margin-top: -8px;
}
</style>
<body>
<div class="title">css实现三角形</div>
</body>
</html>
效果展示
代码解析
1.用div写一个标题
<div class="title">css实现三角形</div>
2.标题样式。
设置相对定位,并设置内边距,给三角形留下空间
.title {
position: relative;
padding-left: 16px;
}
3.三角形样式
这里用到了 ::before 伪类元素,简单解释下,他会在元素(本代码中为“title”)内容前插入新的内容(本代码content中的内容为空)。
重点:不设置元素的宽高,只设置4边的宽度和颜色结果如下图
// 4边都设置颜色
.title::before {
content: "";
position: absolute;
border-width: 8px;
border-style: solid;
border-color: blue green yellow red;
top: 50%;
left: 0;
margin-top: -8px;
}
通过让其他3边颜色透明就能实现三角形效果,给需要显示的三角形的边线设置颜色。
(tip:三角形的总高是上下边线宽度之和,所以偏移一半高度居中)
// 只给左边设置颜色,其余三边线设置透明
.title::before {
content: "";
position: absolute;
border-width: 8px;
border-style: solid;
border-color: transparent transparent transparent red;
top: 50%;
left: 0;
margin-top: -8px;
}
- 上一篇: 你未必知道的49个CSS知识点
- 下一篇: 简析JS中Document与CSS
猜你喜欢
- 2024-12-01 将微前端做到极致-无界方案
- 2024-12-01 html原始字符及其用法
- 2024-12-01 初识CSS——浮动
- 2024-12-01 如何使用CSS计数器自动为元素进行编排
- 2024-12-01 css 渐变跟随鼠标光标按钮动画
- 2024-12-01 简析JS中Document与CSS
- 2024-12-01 你未必知道的49个CSS知识点
- 2024-12-01 CSS 面试题:CSS的权重与优先级
- 2024-12-01 CSS容易忘记的知识点(上)
- 2024-12-01 CSS常考知识点
- 04-26workerman 自定义的协议如何解决粘包拆包
- 04-26Everything 在应急响应中的使用
- 04-26后端开发干货:PHP源码阅读技巧
- 04-26php8属性注解使用教程
- 04-26PHP 中不可能存在的 XXE
- 04-26PHP-FPM 学习记录
- 04-26【玩法悉知】:领地战玩法全解析!
- 04-26PHP实现URL编码、Base64编码、MD5编码的方法
- 最近发表
- 标签列表
-
- xml (46)
- css animation (57)
- array_slice (60)
- htmlspecialchars (54)
- position: absolute (54)
- datediff函数 (47)
- array_pop (49)
- jsmap (52)
- toggleclass (43)
- console.time (63)
- .sql (41)
- ahref (40)
- js json.parse (59)
- html复选框 (60)
- css 透明 (44)
- css 颜色 (47)
- php replace (41)
- css nth-child (48)
- min-height (40)
- xml schema (44)
- css 最后一个元素 (46)
- location.origin (44)
- table border (49)
- html tr (40)
- video controls (49)