微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

html – 用斜率线分隔2个div

我想用斜线分隔2个浮动div,它们有不同的背景颜色.

这里的例子:

HTML标记

<div id="wrap">
    <div id="one"></div>
    <div id="two"></div>
</div>

我已经尝试过旋转它们(正如你在jsfiddle中看到的那样):

#wrap div {
    -moz-transform: rotate(20deg);
    -ms-transform: rotate(20deg);
    -o-transform: rotate(20deg);
    -webkit-transform: rotate(20deg);
    float:left;
    width:50%;
    height:200px;
}

http://jsfiddle.net/F6DgA/

我也试过smth.溢出:隐藏:
http://jsfiddle.net/F6DgA/1/(部分相关,但不是很干净的解决方案)

有没有更简单的方法(不要使用图像……)?

解决方法

我个人会避免使用转换并使用border属性.这对我来说似乎更清洁(也适用于IE8).

示例:http://jsfiddle.net/F6DgA/5/

注意:要确保div内的内容不浮动在边缘上,请添加类似* {Box-sizing:border-Box;然后向div / left左/右填充.

CSS:

#wrap {
    width:300px;
    height:100px;
    margin:0 auto;
    position:relative;
}

#wrap div {
    position:relative;
    height:100%;
    float:left;
}

#one {
    background:#333;
    width:calc(50% + 15px);
}

#one:after {
    content:"";
    position:absolute;
    right:0;
    border-right:30px solid black;
    border-top:100px solid transparent;
}

#two {
    background:#000;
    width:calc(50% - 15px);
}

原文地址:https://www.jb51.cc/html/231533.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐