如何在直线的css中创建“平行四边形”形状?

参见英文答案 > How to bevel the corner of a block div?4个
我试图在css中创建一个直线右侧的平行四边形,但到目前为止,我正在努力实现这一目标.

我正在使用CSS …

-webkit-transform: skew(-18deg);
-moz-transform: skew(-18deg);
-o-transform: skew(-18deg);

…’扭曲’矩形以创建平行四边形.

我想知道右侧是否能伸直?

它需要:在css之前和之后吗?

任何帮助都会很棒.

谢谢,

菲尔

解决方法

您可以通过添加三角形元素并将其放置在矩形元素旁边来实现此目的.

选项1 :(使用边界黑客)

在下面的示例中,我为三角形添加了蓝色,仅用于说明如何实现形状.请更换下面一行的颜色,以获得平行四边形,一边是斜边,另一边是直边.

改变以下

border-color: transparent blue blue transparent;

border-color: transparent red red transparent;

注意:使用此方法时,很难为形状添加额外的外边框.

片段:

.trapezoid{
    position: relative;
    height: 100px;
    width: 100px;
    background: red;
    margin-left: 50px;
    color: white;
}
.trapezoid:after{
    position: absolute;
    content: '';
    left: -50px;
    top: 0px;
    border-style: solid;
    border-color: blue transparent blue transparent;
    border-width: 100px 0px 0px 50px;
}
<div class="trapezoid">Some dummy text</div>

选项2 :(使用偏斜)

.trapezoid{
    position: relative;
    height: 100px;
    width: 100px;
    background: beige;
    border: 1px solid red;
    border-left-width: 0px;
    margin-left: 50px;
}
.trapezoid:before{
    position: absolute;
    content: '';
    left: -25px;
    top: -1px;
    height: 100px;
    width: 50px;
    background: beige;
    border: 1px solid red;
    z-index: -1;
    -webkit-transform: skew(20deg);
    -moz-transform: skew(20deg);
    transform: skew(20deg);
}
<div class="trapezoid">Some dummy text.</div>

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

相关推荐


css的bordercolor属性怎么使用
CSS中contain属性的作用和语法
深入学习响应式布局框架:适合初学者到专家的详尽指南
CSS3选择器优先级规则
margin-top用法
选择最适合您的响应式布局框架:综合评估不同工具
使用CSS中的content属性
设计一个无缝适应不同屏幕尺寸的网站
如何处理CSS样式的层叠问题
探究最佳响应式布局框架:竞争激烈!
学习基本数据类型的快速入门:掌握常用操作技巧
CSS中float布局介绍
一同探讨响应式布局的益处
掌握响应式设计的益处,让网页在不同设备上展现完美适配!
可能导致CSS加载失败的原因有哪些?
各种基本数据类型的全面操作指南
CSS3选择器是否用于设计界面结构?
响应式布局优化移动设备适配的策略与实用技巧
伪元素怎么清除浮动
利用CSS响应式布局创作独特网页设计的设计技巧