我想要有一个稍微旋转的线来分隔我的网站内容,但当我试图旋转<hr>线时,它永远不会正确结束,留下难看的间隙.

我怎样才能得到贯穿整个屏幕的线条?

.dividingline {
  transform: rotate(-5deg);
  overflow: hidden;
}
<div class="dividingline">
  <hr style="margin-top: 50px; margin-bottom: 0px; width:200%; position:relative; left:-1200px; border-width:10px; border-style: solid; border-color: #e82010; border-radius: 24px; background-color:#e82010; height:30px">
  <hr style="margin-bottom: 0px; margin-top: 0px; width:200%; position:relative; left:-1200px; border-width:10px; border-style: solid; border-color: #fe5b20; border-radius: 24px; background-color:#fe5b20; height:30px">
  <hr style="margin-bottom: 50px; margin-top: 0px; width:200%; position:relative; left:-1200px; border-width:10px; border-style: solid; border-color: #f26c8f; border-radius: 24px; background-color:#f26c8f; height:30px">
</div>

推荐答案

为了避免溢出,需要在行的开头设置transform-origin.而不是旋转整个<div>旋转每行单独:

.dividingline {
  margin-top: calc(tan(5deg) * 100vw);
}

.dividingline>hr {
  margin: 0px;
  height: 30px;
  border-radius: 15px 15px;
  
  transform: rotate(-5deg);
  transform-origin: 0 50%;
}

.dividingline>:nth-child(1) {
  background-color: #e82010;
}

.dividingline> :nth-child(2) {
  background-color: #fe5b20;
}

.dividingline> :nth-child(3) {
  background-color: #f26c8f;
}
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation.</p>
<div class="dividingline">
  <hr>
  <hr>
  <hr>
</div>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor
  in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>

在输出中,点击"整页"并调整浏览器窗口的大小.行不会溢出屏幕,也不会覆盖任何文本行.

Html相关问答推荐

有没有可能一个按钮,有焦点,然后再次点击它清除它的焦点,只是使用css?

我能阻止浏览器跨跨区边界折叠空格吗?

Chrome和Safari浏览器中的CSS3动画不同

在浮动元素旁边垂直居中

页脚与主要内容重叠

将2个Flex列合并为1个交替子列

创建带有弯曲边框的水平时间线

更改垫子输入的涟漪 colored颜色

在窄屏幕上显示表格,每个单元格占一行

我无法从带Angular 的Bootstrap 5中的表单中获取数据

使具有FLEX父项的溢出自动的子元素收缩

如何将文本环绕心形(而不仅仅是圆形)?

Div 容器不会遵守边距、填充或间隙

按钮位于主 div 的底部而不是内部 Div

将三个div转换为显示flex

如何实现与内嵌图像对齐的自动换行?

如何更改 Quarto 中标签crossref-def-title的标题 colored颜色 ?

a with