css - Bootstrap 4 和 css 变换旋转

标签 css flexbox bootstrap-4

我想制作一个旁边有线条的钻石。它在正方形时有效,但当我在正方形上应用 transform: rotation(45deg); 时,两条线穿过菱形。

https://jsfiddle.net/0kty2fLw/

最佳答案

CSS 变换不会影响任何其他元素的位置。在应用任何 CSS 变换之前设置所有元素的初始大小和位置,然后应用 CSS 变换,仅影响变换后的元素。这意味着当你的正方形旋转 45 度时,每边的线仍然是旋转前的长度。变换后,旋转后的正方形现在比旋转前更宽,因此线条与“菱形”的左右点重叠。

处理此问题的最快方法是在正方形上设置背景颜色(白色适用于您的示例)以覆盖线条,并确保线条使用 z-index 设置为走到旋转的正方形后面。或者,如果您需要正方形/菱形是透明的,您可以使用左右边距来减少线条的宽度以防止重叠。

附带说明一下,您的 Bootstrap 结构不正确:您不应该在 .container 中包含 .container。我也会避免使用 Bootstrap 网格元素来做这样的事情。它给 HTML 增加了不必要的结构复杂性,而 HTML 应该更直接。如果您需要将其放入 Bootstrap 布局中,我只需在一个全宽度 .col 中进行整条线/菱形设计,并独立处理尺寸和响应能力。

关于css - Bootstrap 4 和 css 变换旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53807486/

相关文章:

javascript - Bootstrap 动态更改面板主体内容

javascript - 如何制作侧边菜单动画?

css - 将子 block 元素限制为父框固定边界?

html - 同一行 bootstrap 4 上的导航栏品牌和移动下拉菜单

javascript - flex 元素是否有可能与它们上方的元素紧密对齐?

html - 比显示 : flex? 更好的居中方式

html - 如何更改基于 :checked, 的复选框的外观,没有其他元素

html - 当边项具有不同宽度时,保持中间项居中

html - Bootstrap 4 导航栏与在移动设备上不会折叠的按钮右对齐

html - Bootstrap 4媒体水平居中