css 实现梯形的效果,以及梯形在实际项目中运用
有时候,有些简单的图形,我们前端也可以自己画出来,省的ui在给我们切图了,毕竟能用代码实现的就用代码去实现了,那样性能也会好点呢。
毕竟几行代码能实现的再用图片其实没必要的。
其实有一个就是实现梯形的效果
其实这个看似简单的吧,但也需要你会制作三角形, 然后将三角形通过位移或者定位来移动到 一个长方形的两侧
组成: 中间一个长方形, 两侧有两个三角形,依次放到指定位置
<style>
div {
width: 200px;
height: 50px;
background-color: #f00;
position: relative;
}
div::before {
content: '';
height: 0px;
width: 0px;
position: absolute;
left: -50px;
top: -50px;
border-top: 50px solid rgba(0, 0, 0, 0);
border-left: 50px solid rgba(0, 0, 0, 0);
border-right: 50px solid rgba(0, 0, 0, 0);
border-bottom: 50px solid #f00;
}
div::after {
content: '';
height: 0px;
width: 0px;
position: absolute;
right: -50px;
top: -50px;
border-top: 50px solid rgba(0, 0, 0, 0);
border-left: 50px solid rgba(0, 0, 0, 0);
border-right: 50px solid rgba(0, 0, 0, 0);
border-bottom: 50px solid #f00;
}
</style>
<div>
</div>
其实主要还是css的掌握呢,html就一个div元素,然后通过伪类生成的
其实这个还有一个比较常见的效果就是
这个效果还是在实际中还是能运用到了
<style>
div.parent {
margin-left: 100px;
display: flex;
width: 500px;
}
div.right {
width: 200px;
height: 50px;
background-color: antiquewhite;
position: relative;
text-align: center;
line-height: 50px;
font-size: 18px;
}
div.left {
width: 150px;
height: 50px;
background-color: aquamarine;
position: relative;
font-size: 18px;
text-align: center;
line-height: 50px;
}
div.right::before {
content: '';
height: 0px;
width: 0px;
position: absolute;
left: -50px;
top: -50px;
border-top: 50px solid rgba(0, 0, 0, 0);
border-left: 50px solid rgba(0, 0, 0, 0);
border-right: 50px solid rgba(0, 0, 0, 0);
border-bottom: 50px solid antiquewhite;
}
div.left::after {
content: '';
height: 0px;
width: 0px;
position: absolute;
right: -50px;
top: -50px;
border-top: 50px solid rgba(0, 0, 0, 0);
border-left: 50px solid rgba(0, 0, 0, 0);
border-right: 50px solid rgba(0, 0, 0, 0);
border-bottom: 50px solid aquamarine;
}
</style>
<div class="parent">
<div class="left">
你好
</div>
<div class="right">
javascript
</div>
</div>
其实画一些简单的图形 是省了图片,但是代码量 确实会增加不少,里面本来有些样式代码可以合并,我为了方便观看就没有合在一起的,嘿嘿
哎 这几天有点忙。好久没有更新博客。以后还是尽量一天一篇呢。加油
关注我。持续更新前端知识,
美酒没故事°: 我拿到的top咋是负数啊 [code=plain] https://ask.csdn.net/questions/8141594 [/code]
异界蜉蝣: nth-of-type(n+3)
正在画图没空写代码: 没效果 不好使
wwz914: 可以了,感谢
yunchong_zhao: 你说的是3.7+版本的jq吧 我今天试了试 好像我上面写的还能用吧