用css绘制一些简单的梯形和三角形

教你使用css属性绘制梯形与三角形,其实这个问题主要考察对于盒子模型的结构的一个分析,本人面试也曾被坑过,

一个元素的盒子模型结构是这样的,
在这里插入图片描述
接下来我把所有的情况都列举了下来,

在这里插入图片描述
在这里插入图片描述

以下为代码:

<!DOCTYPE html>
<html>
<head>
<style> 

div {
	/*height: 100px;*/
    width: 60px;
    height: 0px;
    /*border: 10px solid #000;*/
    border-top: 30px solid #000;
    border-right: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 30px solid transparent;
}

#div2 {
    border-top: 30px solid transparent;
    border-right: 30px solid transparent;
    border-bottom: 30px solid #000;
    border-left: 30px solid transparent;
}

#div3 {
    border-top: 30px solid #000;
    border-right: 0px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 30px solid transparent;
}

#div4 {
    border-top: 30px solid #000;
    border-right: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 0px solid transparent;
}


#div5 {
    border-top: 30px solid transparent;
    border-right: 30px solid transparent;
    border-bottom: 30px solid #000;
    border-left: 0px solid transparent;
}

#div6 {
    border-top: 30px solid transparent;
    border-right: 0px solid transparent;
    border-bottom: 30px solid #000;
    border-left: 30px solid transparent;
}

#div7 {
    border-top: 30px solid transparent;
    border-right: 30px solid #000;
    border-bottom: 30px solid transparent;
    border-left: 30px solid #000;
}

#div8 {
    border-top: 30px solid transparent;
    border-right: 30px solid #000;
    border-bottom: 30px solid transparent;
    border-left: 30px solid transparent;
}

#div9 {
    border-top: 30px solid transparent;
    border-right: 0px solid transparent;
    border-left: 30px solid #000;
    border-bottom: 30px solid transparent;
}

#div10 {
    width: 0px;
    border-top: 30px solid #000;
    border-right: 30px solid transparent;
    border-left: 30px solid transparent;
    border-bottom: 30px solid transparent;
}

#div11 {
    width: 0px;
    border-top: 30px solid transparent;
    border-right: 30px solid transparent;
    border-left: 30px solid transparent;
    border-bottom: 30px solid #000
}

#div12 {
    width: 0px;
    border-top: 30px solid transparent;
    border-right: 0px solid transparent;
    border-left: 30px solid transparent;
    border-bottom: 30px solid #000
}

#div13 {
    width: 0px;
    border-top: 30px solid #aaa;
    border-right: 30px solid #555;
    border-left: 30px solid #000;
    border-bottom: 30px solid #888;
}


#div14 {
    width: 60px;
    height: 100px;
    /* border: 10px solid #000; */
    border-top: 30px solid #444;
    border-right: 30px solid #555;
    border-bottom: 30px solid #888;
    border-left: 30px solid #bbb;
}


</style>
</head>
<body>
1、顶部长的梯形,(右,下,左透明, 边宽30px)
<div></div>

2、底部长的梯形,(上,右,左透明, 边宽30px)
<div id="div2"></div>

3、顶部右长直的梯形,(右,下,左透明, 右边宽0px)
<div id="div3"></div>

4、顶部左长直的梯形,(右,下,左透明, 左边宽0px)
<div id="div4"></div>

5、底部左长直的梯形,(上,右,左透明, 左边宽0px)
<div id="div5"></div>

6、底部右长直的梯形,(上,右,左透明, 右边宽0px)
<div id="div6"></div>

7、一对三角形,(上下透明,左右宽30px)
<div id="div7"></div>

8、右三角形,(上下左透明,右宽30px)
<div id="div8"></div>

9、左三角形,(上右下透明, 左宽30px)
<div id="div9"></div>

10、上三角形,(内容宽为0, 右,下,左三角形透明,上给颜色)
<div id="div10"></div>

11、下三角形,(内容宽为0, 上,右,左三角形透明,下给颜色)
<div id="div11"></div>

12、下直角三角形,(下三角形基础上,给右边为0宽度,其他方向三角形同理)
<div id="div12"></div>

13、4个三角形,(内容宽为0, 4个边给颜色)
<div id="div13"></div>

14、一个元素的模型,上右下左的border边是这样分配的
<div id="div14"></div>
</body>
</html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章