三角形css_用CSS做三角形

试了几种情况:

a、在块级元素上通过设置四边都是透明,然后宽高都是0px,只流出需要的宽高和颜色即可,代码比较少,推荐该方法。

b、在块级元素上通过分别设置四边的透明和颜色,宽高设置都是0px。

c、在内联元素上通过设置四边都是透明,然后宽高都是0px,只流出需要的宽高和颜色即可。但是这里增加position:abolute;

82ea27a8ea4a3557727058a8041cbeb3.png

高度和宽度注释掉,并且有内容的前提下就会出现一些问题。

112fd07efcef1a5aaa4a4100370a03d4.png

注释掉宽高后,没有内容的前提下a和c还可以出现三角形,但是b就不可以。

37ea70651eb9907164784230834720b5.png

如果想三角形固定在父级元素结束的位置,需要使用position。

没有使用position的前提下,可以看到三角形跑到父级元素里面去了。

a2a1b23e14a4506550cd0f8b8050eb74.png

如果修改在红色边框下面出现。

在子元素.a里面使用position:absolute;

在父元素nav里面使用position:relative;就可以达到效果。

使用绝对定位:脱离文档流,但是还是相对于父元素定位。

在子元素.a里面使用position:absolute;

在父元素nav里面使用position:relative;就可以达到效果。这样.a就相对于祖先的第一个position:relative,也就是nav定位。这个情况是父级元素没有padding内边框的前提下使用。

68112c76ffa61ec3a54ada8f10f4ec19.png

如果父级元素有padding内边框的前提下。通过绝对定位后还是会在父级元素里面,还需要通过top/bottom或者left/right来调整。

f1488c0e5785ca001c58611b869ff6e1.png

通过增加top:100%(意思是距离顶部100%父级元素的高度)和left:0%(意思是距离左边0%父级元素的宽度)

50f512f4d1efcfdd1c1b5496dfd8700a.png

使用推荐的a方法可以变换更多的形状:

851a0ab293665b9361a25f8375da6a24.png

另外推荐一个网站有更多用CSS来做图形参考:

The Shapes of CSS | CSS-Tricks​css-tricks.com
8bdee51229c0e4e0de30db2bb2b376ad.png

本文为本人的原创文章,著作权归本人和饥人谷所有,转载务必注明来源

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值