如何用CSS3生成直角梯形,原理是什么?

可以用border来弄,但一直都不懂原理,求解答... 可以用border来弄,但一直都不懂原理,求解答 展开
 我来答
超凡且憨厚灬饼子A
2016-06-08 · TA获得超过9400个赞
知道大有可为答主
回答量:5551
采纳率:44%
帮助的人:2397万
展开全部

上下左右4条边,最关键的一点:每两条边的相交处是斜线的相交的。

如果不渲染成斜线,那么写浏览器内核解析css的程序员要纠结了:上边该压着左边线还是右边线,谁压谁都不合理啊,最简单的是弄成斜线等分,还不必去写判断谁该压着谁的程序代码。


于是,就给用边框创造梯形、三角形留下了空间,其他三条边颜色设置为透明或none,剩下的就是梯形或三角了,至于直角梯形,第6个div是,观察第4个div的 none 起了什么作用,再看div6,相信你就明白了。上图的代码:

<div id="div1">1</div>
<div id="div2">2</div>
<div id="div3">3</div>
<div id="div4">4</div>
<div id="div5">5</div>
<div id="div6">6</div>

<style>
div{
    float: left;margin: 10px;
    border-top: 30px red solid;
    border-bottom: 30px blue solid;
    border-left: 30px yellow solid;
    border-right: 30px green solid;
}

#div1{width: 0;height: 0;}
#div2{width: 30px;height: 0;}
#div3{width: 30px;height: 30px;}

#div4{
    width: 30px;
    border-top: none;
}

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

#div6{
    width: 50px; height: 0;
    border-top: none;
    border-bottom: 40px blue solid;
    border-left: transparent 30px solid;
    border-right: none;
}
</style>
武义菲亚伏电子有限公司
2023-06-12 广告
绝缘子控件是指:“一种能够在架空输电线路中起到重要作用的特殊绝缘控件,能够在架空输电线路中起到重要作用。”绝缘子的作用是支持和固定母线与带电导体,并使带电导体间或导体与大地之间有足够的距离和绝缘。绝缘子应具有足够的电气绝缘强度和耐潮湿性能。... 点击进入详情页
本回答由武义菲亚伏电子有限公司提供
在桃花源哼唱摇篮曲的流氓兔
2016-06-08
知道答主
回答量:4
采纳率:0%
帮助的人:4352
展开全部
上下左右4条边,最关键的一点:每两条边的相交处是斜线的相交的。

如果不渲染成斜线,那么写浏览器内核解析css的程序员要纠结了:上边该压着左边线还是右边线,谁压谁都不合理啊,最简单的是弄成斜线等分,还不必去写判断谁该压着谁的程序代码。

于是,就给用边框创造梯形、三角形留下了空间,其他三条边颜色设置为透明或none,剩下的就是梯形或三角了,至于直角梯形,第6个div是,观察第4个div的 none 起了什么作用,再看div6,相信你就明白了。上图的代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40

<div id="div1">1</div>
<div id="div2">2</div>
<div id="div3">3</div>
<div id="div4">4</div>
<div id="div5">5</div>
<div id="div6">6</div>

<style>
div{
float: left;margin: 10px;
border-top: 30px red solid;
border-bottom: 30px blue solid;
border-left: 30px yellow solid;
border-right: 30px green solid;
}

#div1{width: 0;height: 0;}
#div2{width: 30px;height: 0;}
#div3{width: 30px;height: 30px;}

#div4{
width: 30px;
border-top: none;
}

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

#div6{
width: 50px; height: 0;
border-top: none;
border-bottom: 40px blue solid;
border-left: transparent 30px solid;
border-right: none;
}
</style>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友2f2a97e
2016-06-23
知道答主
回答量:27
采纳率:0%
帮助的人:7.3万
展开全部
直角梯形是指有一个直角的梯形。梯形两腰既不相等也不平行,两底平行,但不相等,一个腰上的两角都是直角。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
袁方旭
2016-06-16 · TA获得超过483个赞
知道答主
回答量:849
采纳率:0%
帮助的人:115万
展开全部
不过丰华股份法国恢复
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式