css - CSS元素的顺序

标签 css

有两个CSS语句,但在声明中的顺序不同。

.wrap {
    background-color: rgba(255, 255, 255, 0.4);
    min-height:600px;
    background: url('/images/bg.jpg');
    background-size: cover;
    max-width: 100%;
}

.wrap {
    background: url('/images/bg.jpg');
    background-size: cover;
    max-width: 100%;
    background-color: rgba(255, 255, 255, 0.4);
    min-height:600px;
}

区别只是background: url()background-color之间元素的顺序不同,如果background: url()background-color之后声明,没有图片可以加载,则background-color不能生效。似乎 background: url() 覆盖了 background-color

Demo可以从http://jsfiddle.net/yckelvin/ctgc8xzL/找到

声明中元素顺序的CSS语法有定义吗?我阅读了 w3schools.com,但没有此类信息。

最佳答案

当您使用快捷方式 background 属性时,任何未指定的背景属性(例如 background-color)都将设置为初始默认值。

所以如果background属性在background-color之后声明而不指定 一种颜色,然后背景颜色采用 transparent 的初始值。

这是 CSS 规范的一部分:

http://www.w3.org/TR/css3-background/#the-background

关于css - CSS元素的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26111692/

相关文章:

javascript - gmail 中的下拉框和按钮

java - 滚动 ListView 会破坏 ListCell 样式

html - 某些段落在 iOS 设备上的 safari 中显示错误的颜色?

html - 如何缩放任意文本以始终适合视口(viewport)宽度?

html - 如何将 my_html 插入 joomla 文章以便保留格式

html - 滚动条在 IE7、FF 和 Chrome 的自动调整大小框中表现不佳

javascript - 如何创建固定的js slider

html - CSS 动画在 Chrome 中有效,但在 FireFox 中无效

html - 重新排列没有绝对位置的 flex 元素

css - 当一个绝对定位的元素有一个定位的父元素时,你如何才能相对于视口(viewport)水平居中?