最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

css巧用border属性制作各种图形(矩形,梯形,三角形)

来源:懂视网 责编:小采 时间:2020-11-27 16:41:26
文档

css巧用border属性制作各种图形(矩形,梯形,三角形)

css巧用border属性制作各种图形(矩形,梯形,三角形):border梯形 为了观察边框究竟是哪一种拼接方式,为边框设置不同的颜色背景,代码如下: #content{ width: 100px; height: 100px; background: #FFC; border-top: 80px solid #0F0; border-right: 80px solid #09C
推荐度:
导读css巧用border属性制作各种图形(矩形,梯形,三角形):border梯形 为了观察边框究竟是哪一种拼接方式,为边框设置不同的颜色背景,代码如下: #content{ width: 100px; height: 100px; background: #FFC; border-top: 80px solid #0F0; border-right: 80px solid #09C
border梯形

为了观察边框究竟是哪一种拼接方式,为边框设置不同的颜色背景,代码如下:

#content{
 width: 100px;
 height: 100px;
 background: #FFC;
 border-top: 80px solid #0F0;
 border-right: 80px solid #09C;
 border-bottom: 80px solid #9F9;
 border-left: 80px solid #FC3;
}

上面的CSS控制ID属性为content的div块的属性,显示效果如下:

border梯形

从上面的效果很显然了,每个边的border是梯形无缝拼接的,而不是矩形拼接的。

那么我们就可以把另外三个边框的颜色设置为transparent,这样就可以得到一个梯形啦!

#content{
 width: 200px;
 height: 200px;
 border-top: 80px solid #0F0;
 border-right: 80px solid transparent;
 border-bottom: 80px solid transparent;
 border-left: 80px solid transparent;
}

显示效果如下:

css 巧用border属性制作各种图形(矩形,梯形,三角形)

那就有疑问了,可不可以通过不定义其他三条边框来达到只显示一条边框的梯形呢?

#content{
 width: 200px;
 height: 200px;
 border-top: 80px solid #0F0;
}

像上面的代码,我们期望的是显示盒模型中的上边框梯形,但是实际的显示效果是下面这样的:

css 巧用border属性制作各种图形(矩形,梯形,三角形)

是一个矩形!而且矩形的宽就是200px,即我们定义的内容的宽度,奇怪!我们还不相信,于是再换一换浏览器试试,然而FF,IE,Chrome都是这样的。我们可以想到这样一种解释,如果边框不定义,那么这条边框就表现为矩形,如果边框定义,那么它就表现为梯形。这样也就可以解释上面的例子为什么会出现矩形了。由于左右边框都没有定义,所以属于左右边框区域的整个矩形都消失了,留下的上边框自然直剩下一个矩形啦!

border三角形

既然可以使用border实现梯形,可不可以实现三角形呢。梯形在上底边变为0的时候,梯形会退化为三角形,我想你已经有了答案,如果设置content的height和width都为0时,我们就能得到四个三角形:

#content{
 width: 0px;
 height: 0px;
 border-top: 80px solid #0F0;
 border-right: 80px solid #09C;
 border-bottom: 80px solid #9F9;
 border-left: 80px solid #FC3;
}

css 巧用border属性制作各种图形(矩形,梯形,三角形)

我们当然也可以通过设置其他边的border的背景为transparent实现一个或者2个或者3个三角形咯!

#content{
 width: 0px;
 height: 0px;
 border-top: 80px solid #0F0;
 border-right: 80px solid #09C;
 border-bottom: 80px solid transparent;
 border-left: 80px solid transparent;
}

css 巧用border属性制作各种图形(矩形,梯形,三角形)

当然,如果不定义某些边的border,不定义的border就会表现为矩形。

#content{
 width: 0px;
 height: 0px;
 border-top: 80px solid #0F0;
 border-right: 80px solid #09C;
 border-left: 80px solid #FC3;
}
/*没有定义border-bottom的的情况下,下边border的整个矩形将会消失

css 巧用border属性制作各种图形(矩形,梯形,三角形)

如果同时没有定义左右边框,或者上下边界的话,就会什么都不显示。当然也可以一边不定义,一边隐藏,就会有很多种图形啦。

css 巧用border属性制作各种图形(矩形,梯形,三角形)

更多的,可以用在表格中画斜线,多个border叠加,和before,after伪元素的结合起来就有很多妙用啦!关键是要理解border的具体表现形式。

文档

css巧用border属性制作各种图形(矩形,梯形,三角形)

css巧用border属性制作各种图形(矩形,梯形,三角形):border梯形 为了观察边框究竟是哪一种拼接方式,为边框设置不同的颜色背景,代码如下: #content{ width: 100px; height: 100px; background: #FFC; border-top: 80px solid #0F0; border-right: 80px solid #09C
推荐度:
标签: 制作 图形 矩形
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top