用css实现三角形效果
2015-10-09 16:41
615 查看
<!DOCTYPE html>
<html>
<head>
<style>
<!--实现三角形效果-->
.m{margin:20px;
float:left;
width:0;
height:0;
border:solid transparent;
border-width:12px;
}
.left{border-left-color:#000;}
.right{border-right-color:red;}
.top{border-top-color:blue;}
.bottom{border-bottom-color:pink;}
<!--实现图片呈现的效果-->
以上代码实现图片实现的两个效果
.left .right .top .bottom 四个类的样式是控制三角形的方向
.m 类中设置宽高都为0,然后通过border-width来控制三角形的大小,在只有单个边或者是对边的情况下,border是以三角形呈现的,也就是将border沿着对角切开为四块,取其中一块,或者对角的两块。从而实现三角形的效果。
而在实现demo1的效果时,用选择器 :after :before 代替一个div从而实现效果 两个嵌套,大的放底层(before) 小的放上层(after)
<html>
<head>
<style>
<!--实现三角形效果-->
.m{margin:20px;
float:left;
width:0;
height:0;
border:solid transparent;
border-width:12px;
}
.left{border-left-color:#000;}
.right{border-right-color:red;}
.top{border-top-color:blue;}
.bottom{border-bottom-color:pink;}
<!--实现图片呈现的效果-->
#demo1{ margin-top:20px; width: 100px; height: 100px; background-color: #fff; position: relative; border: 2px solid #333; } #demo1:after,#demo1:before{ border:solid transparent; position:absolute; left:100px; width:0; height:0; content:''; } #demo1:before{ border-left-color:#000; top:18px; border-width:12px; } #demo1:after{ border-width:10px; border-left-color:#fff; top:20px; } </style> </head> <body> <div class="m left"></div> <div class="m right"></div> <div class="m top"></div> <div class="m bottom"></div>
<div id="demo1"></div>
</body>
以上代码实现图片实现的两个效果
.left .right .top .bottom 四个类的样式是控制三角形的方向
.m 类中设置宽高都为0,然后通过border-width来控制三角形的大小,在只有单个边或者是对边的情况下,border是以三角形呈现的,也就是将border沿着对角切开为四块,取其中一块,或者对角的两块。从而实现三角形的效果。
而在实现demo1的效果时,用选择器 :after :before 代替一个div从而实现效果 两个嵌套,大的放底层(before) 小的放上层(after)
相关文章推荐
- 背景图片居中
- 设置Echarts鼠标悬浮样式
- 纯css3实现旋转的太极图
- 利用CSS边框绘制各种三角形
- 嵌入CSS的四种方式
- CSS3 3D transform 秒懂
- CSS你可能还不知道的一些知识点
- chebox样式
- CSS圆角按钮
- 纯CSS实现气泡框
- html+CSS 学习
- CSS3选择器
- HTML中引入CSS的方法
- 提高您CSS开发能力的技巧集
- chrome浏览器当表单自动填充时如何去除浏览器自动添加的默认样式
- css
- html 美化滚动条默认样式
- chrome浏览器当表单自动填充时,怎么去除浏览器自动添加的默认样式。
- css js 的引入方式和书写位置
- CSS中zoom:1的作用 ,小标签大作用