【问题标题】:How to correctly use the linear-gradient?如何正确使用线性梯度?
【发布时间】:2015-08-24 13:07:35
【问题描述】:

我是 CSS3 的新手,我的项目的 CSS 文件中有以下样式:

.headerDiv {
    background-image: linear-gradient(#04519b, #044687 60%, #033769);
    ............................
    ............................
    ............................
}

我很清楚是什么 linear-gradient(#04519b, #044687 60%, #033769); 应该这样做(它创建一个垂直渐变作为类名 headerDiv 的 div 的背景。

我必须把它改成渐变的颜色,所以我在谷歌上找到了这个文档:http://www.w3schools.com/css/css3_gradients.asp

问题是我找不到 CSS 文件中使用的语法。

与我的相关:

linear-gradient(#04519b, #044687 60%, #033769);

究竟代表什么:

1) 第一个值 (#04519b)

2)第二个值(#044687 60%),60%是什么意思?

3) 第三个值 (#033769)

我知道这些正在改变渐变颜色,但我不知道确切的顺序以及 60% 的含义。

【问题讨论】:

标签: html css linear-gradients


【解决方案1】:

渐变linear-gradient(#04519b, #044687 60%, #033769);可以解释如下:

  • 渐变是从to bottom 的顶部div 开始的。这是default direction,如果未指定角度(如45deg)或未指定方向(如to right),则使用它。
  • 第一个颜色(即0%)是#04519b。如果没有为第一种颜色指定 color-stop position,则根据规范假定为 0%。
  • 60%color-stop position。即在渐变图像高度的60%处,颜色应该正好是#044687
  • 这意味着在 0% 到 60% 之间,颜色逐渐从 #04519b 变为 #044687
  • 最终颜色(即100%)是#033769。与第一种颜色类似,如果没有为最后一种颜色指定位置,则假定为 100%。
  • 这意味着在 60% 和 100% 之间,颜色逐渐从 #044687 变为 #033769

div{
  height: 100px;
  width: 100%;
  background: linear-gradient(#04519b, #044687 60%, #033769);
}
<div></div>

【讨论】:

  • 解释很好,但是手动编码线性渐变有什么意义吗?此外,渐变在某些浏览器中无法正常工作。我认为不鼓励手动编码渐变,因为这是浪费生产时间和错误的来源。
  • @Sylverdrag:我认为没有必要气馁。我手工编码所有的线性渐变,因为它可以让我们更好地理解正在做什么。这可能是个人选择,但我更喜欢这种方式。浏览器支持或差异?嗯,这是我们永远无法真正克服的问题,但根据我的经验,渐变在所有支持的浏览器中都相当稳定。
  • 一方面,您不太可能将人们使用的所有有点晦涩的浏览器的所有边缘情况都包括在内,因为这很让人头疼。即使只有百分之几的访问者,在一个相当大的网站上,也有几千人。另一方面,它比较慢,除了非常简单的渐变,而且尝试几十种不同的渐变很痛苦。平面设计在很大程度上是一个视觉过程。如果生成的代码会更好,我完全赞成手工编码,但如果不是,那有什么意义呢?
  • @Sylverdrag:我想这个问题更多的是关于解释,关于是手动编码还是使用工具的讨论是题外话。让我们说我们每个人都有自己的偏好,然后就这样吧。
  • @Sylverdrag 即使您使用生成器,理解规范不会伤害任何人
【解决方案2】:

这是linear-gradient的语法

background: linear-gradient(direction, color-stop1, color-stop2, ...);

方向

left,right,toright,..
left top,bottom right,..
180deg,80deg,90deg..

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-12
    • 1970-01-01
    • 2020-06-07
    • 2017-12-03
    • 2012-12-14
    • 1970-01-01
    • 1970-01-01
    • 2021-11-16
    相关资源
    最近更新 更多