css url() not recognized in internet explorer 10

2019-02-13 17:39发布

I have this line in my CSS:

.ui-icon-zoom-in { content: url(images/16x16/ZoomIn.png); } 

Which I am using with jQuery UI Button widget like this:

$("#zoomin").button({ text: false, icons: { primary: "ui-icom-zoom-in" } });

In Chrome, I can see the image centered within the button. However, in IE10, I do not see the image.

Am I missing something here?

3条回答
聊天终结者
2楼-- · 2019-02-13 18:14

The content property is only valid on :before and :after pseudo-elements. You should change it to:

.ui-icon-zoom-in { 
  background: url(images/16x16/ZoomIn.png) no-repeat; 
  width:16px;
  height:16px;
}

Apart from that, IE8+ only supports content property if a valid DOCTYPE is specified.

查看更多
别忘想泡老子
3楼-- · 2019-02-13 18:20

The content property is only accepted on :before and :after pseudo-elements in CSS3. You should probably use a jQuery selector to append the image to the object:

$("#zoomin").html("<img src='images/16x16/ZoomIn.png' alt='Zoom In'>");
查看更多
4楼-- · 2019-02-13 18:24

I had the same situation in IE 11. The content is <div class="image"> </div> So in Chrome it works like this

.image {
  content: url("image.jpg");
}

To make it Works in IE i have set the content option to :after element. Like

.image:after {
  content: url("image.jpg");
}
查看更多
登录 后发表回答