<img src=" http://image.dydata.io/YQqzz7AY5kTURfaHHemW4f.jpg">
这样做完全没有问题,图片可以正常显示,
但是,如果是在一个div上设置 background-image: url( 其他网站的图片路径 )
,则无法正常显示,官方文档上说css background-image:url() 里面只能是相对路径,请问一下背后的机制是什么样的?求大神解答~
<img src=" http://image.dydata.io/YQqzz7AY5kTURfaHHemW4f.jpg">
这样做完全没有问题,图片可以正常显示,
但是,如果是在一个div上设置 background-image: url( 其他网站的图片路径 )
,则无法正常显示,官方文档上说css background-image:url() 里面只能是相对路径,请问一下背后的机制是什么样的?求大神解答~
刚刚验证过了,肯定是可以的,
html部分:<div id="ddd" style="width:100%;height: 159px;"></div>
js部分:var src ="http://image.dydata.io/YQqzz7AY5kTURfaHHemW4f.jpg";
$("#div").css('background', "url("+src+") center center no-repeat");
……这个属性就叫url你说它不支持URL?Excuse me?
看了下MDN上,写的是可以用相对地址,下边的例子好几个都是直接用URL的。
看到题主提了下“其他网站”,如果对方没有做防盗链的话,那么最有可能的就是这个<div>
有问题。
你这个问题是因为<img>
标签本身是元素,其默认大小由内容(也就是图片大小)决定。
而如果你把图片作为<div>
的背景,背景大小并不属于元素内容区的部分,所以由于你没定义div
标签的高度,而且div
标签中没有任何内容,所以div
标签的默认高度为0,你也就看不到div
的背景图了。
10 回答11.1k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
5 回答2k 阅读
background-image:url() 里面是可以写绝对路径的,可能是你没有给div高宽。