CSS代码仅按特定顺序工作,样式标记符合命令

时间:2015-08-09 21:23:10

标签: css

我有一个问题,我使用css使div在屏幕上显示为圆形,但只有在首先设置背景图像属性时它才有效

如果图像不需要使用PHP代码动态插入

,通常不会出现问题

我创建了3个jsfiddles来记录我的问题

https://jsfiddle.net/2wr2wajw/

No issue, background set first

https://jsfiddle.net/zvq3r0pd/

Issue,background doesnt get resized properly

link3 jsfiddle.net/x8g05uph /

Same issue as above, i would have expected the style code to be executed first

那么,问题是什么,解决方案是什么?谢谢

修改

发现在html代码中添加其他样式是有效的,但这并不是很好,也没有必要为每个人重写标记

那是什么类选择器适合的?

link4 jsfiddle.net/q7sdwbfk /

not nice 

1 个答案:

答案 0 :(得分:1)

您的代码未在每个方案中正确显示的原因是因为您使用的是background速记属性,而后者又会覆盖以前设置的值。

例如,在示例2中,您在设置background-size速记之前设置了background。通过设置background速记,您将覆盖background-size属性。

如果您不想按顺序加载它们以免被覆盖,请不要使用速记background。相反,请使用background-imagebackground-repeat等。这会单独设置每个属性,并且不会导致任何内容被覆盖,除非再次显式调用该属性。

以下是您的示例2的updated fiddle,使用单个属性而不是速记。