css - 如何使用 CSS 创建平行四边形,但没有转换

标签 css

我知道了,到目前为止,我想将三 Angular 形​​和矩形放在一起得到一个平行四边形。有什么想法吗?

https://jsfiddle.net/pu17bbfo/

我不能使用转换,因为这是针对 wkhtmltopdf 的,它不支持它们。

代码:

<div style="display: block; ">
<div style="width: 0;
height: 0;
border-style: solid;
border-width: 0 0 72px 40px;
border-color: transparent transparent #f17522 transparent; display: inline-block;">
</div>
<div style="height: 72px; background-color: #f17522; display: inline-block;">
<p style="color: #fff">Talking Points Name</p>
</div>
<div style="width: 0;
height: 0;
border-style: solid;
border-width: 72px 40px 0 0;
border-color: #f17522 transparent transparent transparent; display: inline-block;">
</div>
</div>

最佳答案

默认情况下,inline-block 元素会有vertical-align: baseline。您可以在那里使用 topbottom,它们将垂直对齐。然后要么删除元素之间的空白以消除间隙,要么在此处放置 HTML 注释以删除页面上显示的空白。

.headline {
  height: 72px;
  color: #fff !important;
  background-color: #f17522;
  white-space: nowrap !important;
}

div {
  vertical-align: bottom;
}
<div style="display: block; ">
  <div style="width: 0;
height: 0;
border-style: solid;
border-width: 0 0 72px 40px;
border-color: transparent transparent #f17522 transparent; display: inline-block;">
  </div><!--
--><div style="height: 72px; background-color: #f17522; display: inline-block;">
    <p style="color: #fff">Talking Points Name</p>
  </div><!--
--><div style="width: 0;
height: 0;
border-style: solid;
border-width: 72px 40px 0 0;
border-color: #f17522 transparent transparent transparent; display: inline-block;">
  </div>
</div>

关于css - 如何使用 CSS 创建平行四边形,但没有转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44081214/

相关文章:

css - 让子容器与父容器一起成长

javascript - 媒体查询适用于浏览器,但不适用于移动设备

html - 在以下出现相同工具提示图像的情况下,如何在悬停时显示不同的工具提示图像?

javascript - IE8 HTML5 动态内容没有应用 AngularJs 的样式

css - 如何像数字时钟 CSS 一样设置字体系列?

javascript - 如何从 HTML CSS 和 JS 中的 API 获取数据

javascript - 在 slick.js 中显示 3 张幻灯片的中心事件幻灯片

html - 带有 '[class]' 作为选择器一部分的 CSS。括号中的文字字符串 'class'

javascript - Shiny - dashboardPage - 我怎样才能添加一个按钮到框标题

css - 背景图片在移动设备上未以全尺寸显示