代码之家  ›  专栏  ›  技术社区  ›  Dayley

在css中,是否可以使用顶部宽度为“a”和底部宽度为“b”的div使右侧成对角线?

css
  •  1
  • Dayley  · 技术社区  · 6 年前

    我想在css中创建具有对角线边的内联块div,其顶部宽度为200px,底部宽度为100px。这可能吗?如果是,怎么做?或者有人会建议什么更好的选择?

    2 回复  |  直到 6 年前
        1
  •  1
  •   Dknacht    6 年前

    html的box模型意味着div总是矩形的。不过,你可以得到一个非常体面的结果使用一些技术。最简单的一种方法是使用css来给你需要的背景部分着色。你设置了 width 到更宽的边,然后使用“左右边框”和“底部边框”属性调整形状。例如:

    .myDiv {
      border-bottom: 50px solid #555;
      border-left: 25px solid transparent;
      border-right: 25px solid transparent;
      height: 0;
      width: 125px;
    }
    

    你可以看到它在这里工作: https://www.w3schools.com/howto/tryit.asp?filename=tryhow_css_shapes_trapezoid w3school还有一个非常有趣的页面,里面有很多可以用css创建的形状。在这里检查: https://www.w3schools.com/howto/howto_css_shapes.asp

        2
  •  0
  •   caiovisk    6 年前

    你想创造一个梯形吗?

    .trapezoid {
        border-top: 100px solid red;
        border-left: 50px solid transparent;
        border-right: 50px solid transparent;
        height: 0;
        width: 100px;
    }
    

    .trapezoid {
    	border-top: 100px solid red;
    	border-left: 50px solid transparent;
    	border-right: 50px solid transparent;
    	height: 0;
    	width: 100px;
    }
    		
    <div class="trapezoid">
    
    </div>