Html 使用CSS3的波形线

Html 使用CSS3的波形线,html,css,linear-gradients,Html,Css,Linear Gradients,我必须画一条曲线,这需要使用CSS3绘制。弯曲的线条应该看起来像附加的图像 我试着只用CSS来创建,但没有成功。感谢您的帮助。这是我创作的小提琴 。锯齿状边缘{ 显示:内联块; 背景色:无; 左边界:无; 宽度:1%; 高度:20px; 位置:相对位置; 右:1%; } .锯齿状边缘:之后{ 内容:''; 位置:绝对位置; 背景:线性渐变(-20度,透明0度,透明 45%,#bcbcbc 45%,#bcbcbc 50%,#C4DCED 50%,#C4DCED 100%)0 3px,线性- 梯度

我必须画一条曲线,这需要使用CSS3绘制。弯曲的线条应该看起来像附加的图像

我试着只用CSS来创建,但没有成功。感谢您的帮助。这是我创作的小提琴

。锯齿状边缘{
显示:内联块;
背景色:无;
左边界:无;
宽度:1%;
高度:20px;
位置:相对位置;
右:1%;
}
.锯齿状边缘:之后{
内容:'';
位置:绝对位置;
背景:线性渐变(-20度,透明0度,透明
45%,#bcbcbc 45%,#bcbcbc 50%,#C4DCED 50%,#C4DCED 100%)0 3px,线性-
梯度(-155度,透明0,透明45%,#bcbc 45%,#bcbc
50%,#C4DCED 50%,#C4DCED 100%)0 3px;
背景尺寸:100%6px;
宽度:100%;
身高:100%;
左:45%;
z指数:0;
}

我相信这就是您要找的。我相信可能会有一种更具语义的方法,但这就完成了。播放设置以实现精确的视觉效果。干杯

    $color: #336699;
.wrapper {
  padding: 50px;
}

.top-line {
  background-color: $color;
  display: block;
  height: 50px;
  position: relative;
  width: 3px;

  &:after {
    background-color: $color;
    bottom: -6px;
    content: '';
    display: block;
    height: 3px;
    position: absolute;
    transform: rotate(25deg);
    width: 30px;
  } 
}
.middle-line {
  background-color: $color;
  bottom: -10px;
  display: block;
  height: 3px;
  left: -20px;
  position: relative;
  width: 50px;
}

.bottom-line {
  background-color: $color;
  display: block;
  height: 50px;
  margin-top: 20px;
  position: relative;
  width: 3px;

  &:before {
    background-color: $color;
    content: '';
    display: block;
    height: 3px;
    left: -21px;
    position: absolute;
    top: -7px;
    transform: rotate(25deg);
    width: 25px;
  }
}

所以我觉得这条线好像有一个横向的“z”。因此,我使用css通过:before伪类添加了一个(旋转的)

如果你喜欢的话,我可以试着调整一下,因为我看到一个1像素的间隙,你的曲线有点“模糊”

标记:

。曲线{
高度:100px;
左边框:2px实心#4c6675;
位置:相对位置;
}
.弯弯曲曲的线条:在{
内容:“z”;
字体大小:22px;
位置:绝对位置;
最高:40%;
左-6px;
背景:白色;
线高:9px;
垂直对齐:-2px;
显示:内联块;
变换:旋转(49度)scaleY(0.7);
颜色:#4c6675;
字号:600;
字体系列:“Arial”;
}

使用.svg文件执行此任务,并让其他浏览器使用直线,这是我今天要做的,因为我发现它更干净

Gimp是一个很好的创建矢量图形的程序,请确保使用crop document to content功能,并且我已经在svg中正确设置了尺寸,保存了几行css(而不是使用其他width属性)

但您也可以让较旧的浏览器使用png(如果您关心约5%的用户没有看到使用此技术的那一行):

优点:更自由、更轻松


缺点:对于一小部分用户来说,它的视觉吸引力不太好,这里有一个SVG,您可以将其用作
div
右侧或左侧元素的背景


您还可以查看
背景图像
背景大小
,使用渐变通过单个类绘制每个位,而无需额外标记:

。锯齿状{
背景:
线性梯度(0度,绿松石色,绿松石色)顶部不重复1米,
线性梯度(0度,绿松石色,绿松石色)无重复1米底部,
线性梯度(-45度,透明48%,绿松石48%,绿松石53%,透明53%)无重复-0.15em计算(50%+0.25em),
线性梯度(-45度,透明48%,绿松石48%,绿松石53%,透明53%)无重复-0.65em calc(50%-0.25em),
线性梯度(90度,绿松石色,绿松石色)无重复0.5em 50%
金色/*您可以在此处添加背景色或添加其他背景图像*/;
背景尺寸:
2倍钙(50%-0.5em),
2倍钙(50%-0.5em),
3em 0.5em,
3em 0.5em,
1em 1px;
填料:2米;
}
/*范例之二*/
.锯齿状的{
背景:
线性梯度(0度,绿松石色,绿松石色)顶部不重复1米,
线性梯度(0度,绿松石色,绿松石色)无重复1米底部,
线性梯度(-45度,透明48%,绿松石48%,绿松石53%,透明53%)无重复-0.15em计算(50%+0.25em),
线性梯度(-45度,透明48%,绿松石48%,绿松石53%,透明53%)无重复-0.65em calc(50%-0.25em),
线性梯度(90度,绿松石色,绿松石色)无重复0.5em 50%,
网址(http://lorempixel.com/600/800/nature/6) ;
背景尺寸:
3倍钙(50%-0.5em),
3倍钙(50%-0.5em),
3em 0.5em,
3em 0.5em,
1em 2px,
掩护;
颜色:青绿色;
文本阴影:0 1px黑色;
字体大小:1.5em;

佩伦特式的居住者莫比·特里斯蒂克·塞内特斯和内特斯·马莱苏达是著名的埃吉斯塔斯。前庭侵权者码头、封建维塔斯、尤里西斯·埃吉斯、临时坐在埃米特、ante.Donec eu libero坐在埃吉斯塔斯·塞姆佩尔的码头上。埃内斯·尤里弗德·利弗德·利奥(Mauris placerat eleifend leo)。奎斯坐在埃米特和萨皮恩·乌勒姆科珀的码头上回溯前庭、调味品、生活必需品、奥纳·西特、维西、埃尼安发酵剂、精粹调味品、益智果、紫荆花、射箭、节拍、耳背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背、脚背大鼠、大鼠、大鼠、大鼠、小鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、大鼠、小、我的生命之蓖麻。莫里斯·普莱瑞特·埃利芬德·利奥。奎斯克坐在阿梅特和萨皮恩·乌兰科珀·法雷特拉。前庭,调味品,维塔,康茂德·维塔,奥纳雷坐在阿梅特,维西。埃尼亚发酵剂,精粹酒酿调味品,爱欲,芦苇果,节拍,酒酿。不要在turpis pulvinar facilisis。但猫。普拉目前的达比布斯、福西布斯、奥古斯塔、埃古斯塔、欧罗巴人、欧罗巴人、埃罗巴人、帕特·纳姆·杜米、蒂尼·奎斯、阿库姆桑·波特托尔、法利西斯·卢克图斯、梅图斯这将是使用图像(SVG或PNG)的好时机相反,问题是我必须动态地使用它,这一行可以出现在div的右/左侧。还有许多其他相关的业务规则

    $color: #336699;
.wrapper {
  padding: 50px;
}

.top-line {
  background-color: $color;
  display: block;
  height: 50px;
  position: relative;
  width: 3px;

  &:after {
    background-color: $color;
    bottom: -6px;
    content: '';
    display: block;
    height: 3px;
    position: absolute;
    transform: rotate(25deg);
    width: 30px;
  } 
}
.middle-line {
  background-color: $color;
  bottom: -10px;
  display: block;
  height: 3px;
  left: -20px;
  position: relative;
  width: 50px;
}

.bottom-line {
  background-color: $color;
  display: block;
  height: 50px;
  margin-top: 20px;
  position: relative;
  width: 3px;

  &:before {
    background-color: $color;
    content: '';
    display: block;
    height: 3px;
    left: -21px;
    position: absolute;
    top: -7px;
    transform: rotate(25deg);
    width: 25px;
  }
}
background: url(../old-browsers.png);  
background: linear-gradient(transparent, transparent), url(../path/to/svg);
/*width: something */