为什么background-size写在background的前面和后面的效果会不一样?

为什么background-size写在background的前面和后面的效果会不一样?

http://img1.sycdn.imooc.com//climg/59f88de500014ca904980337.jpg

http://img1.sycdn.imooc.com//climg/59f88de60001967a04980308.jpg

这两图的代码出来的效果不一样。如果把background改成background-image,那么background-size写在前面和后面都是一样的效果,这是因为什么原因造成的呢?求解谢谢~

正在回答

登陆购买课程后可参与讨论,去登陆

4回答

background是复合属性的简写方式,会覆盖前面的背景样式的设置,所以第三个background-size没有生效;第四个background-color没有生效。

  • woximiemie 提问者 #1
    原来如此,谢谢*^_^*
    2017-11-01 11:59:10
提问者 woximiemie 2017-11-01 10:56:18

HTML部分:

<body>

    <div></div>  

</body>


CSS部分(4种情况,1和2效果一样,3和4效果不一样)

1.

div{

    width: 400px; height: 400px; background-color:yellow; 

    background-size:100px 100px;

    background-image:

    linear-gradient(45deg,purple 25%,transparent 25%), linear-gradient(135deg,purple 25%,transparent 25%), linear-gradient(225deg,purple 25%,transparent 25%), linear-gradient(315deg,purple 25%,transparent 25%);

}

2.

div{

    width: 400px; height: 400px; background-color:yellow; 

    background-image:

    linear-gradient(45deg,purple 25%,transparent 25%), linear-gradient(135deg,purple 25%,transparent 25%), linear-gradient(225deg,purple 25%,transparent 25%), linear-gradient(315deg,purple 25%,transparent 25%);

    background-size:100px 100px;

}

3.

div{

    width: 400px; height: 400px; background-color:yellow; 

    background-size:100px 100px;

    background:

    linear-gradient(45deg,purple 25%,transparent 25%), linear-gradient(135deg,purple 25%,transparent 25%), linear-gradient(225deg,purple 25%,transparent 25%), linear-gradient(315deg,purple 25%,transparent 25%);

}

4.

div{

    width: 400px; height: 400px; background-color:yellow; 

    background:

    linear-gradient(45deg,purple 25%,transparent 25%), linear-gradient(135deg,purple 25%,transparent 25%), linear-gradient(225deg,purple 25%,transparent 25%), linear-gradient(315deg,purple 25%,transparent 25%);

    background-size:100px 100px;

}



提问者 woximiemie 2017-11-01 10:55:13

HTML部分:

<body>

    <div></div>  

</body>


CSS部分(4种情况,1和2效果一样,3和4效果不一样)

1.

div{

    width: 400px; height: 400px; background-color:yellow; 

    background-size:100px 100px;

    background-image:

    linear-gradient(45deg,purple 25%,transparent 25%), linear-gradient(135deg,purple 25%,transparent 25%), linear-gradient(225deg,purple 25%,transparent 25%), linear-gradient(315deg,purple 25%,transparent 25%);

}

2.

div{

    width: 400px; height: 400px; background-color:yellow; 

    background-image:

    linear-gradient(45deg,purple 25%,transparent 25%), linear-gradient(135deg,purple 25%,transparent 25%), linear-gradient(225deg,purple 25%,transparent 25%), linear-gradient(315deg,purple 25%,transparent 25%);

    background-size:100px 100px;

}

3.

div{

    width: 400px; height: 400px; background-color:yellow; 

    background-size:100px 100px;

    background:

    linear-gradient(45deg,purple 25%,transparent 25%), linear-gradient(135deg,purple 25%,transparent 25%), linear-gradient(225deg,purple 25%,transparent 25%), linear-gradient(315deg,purple 25%,transparent 25%);

}

4.

div{

    width: 400px; height: 400px; background-color:yellow; 

    background:

    linear-gradient(45deg,purple 25%,transparent 25%), linear-gradient(135deg,purple 25%,transparent 25%), linear-gradient(225deg,purple 25%,transparent 25%), linear-gradient(315deg,purple 25%,transparent 25%);

    background-size:100px 100px;

}



小丸子爱吃菜 2017-11-01 10:25:24

可以将你的代码粘贴上来,我们需要运行一点,更好的定位到问题所在!

祝学习愉快!

  • 提问者 woximiemie #1
    代码已经粘贴上来了,谢谢
    2017-11-01 10:56:08
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师