2016-10-21 6 views
-1

Fiddle: https://jsfiddle.net/z1mdvkgq/Почему появляется иконка в некоторых браузерах, а другие не

HTML:

<div class="test" style="overflow: hidden; width: 650px; height: 350px; background: #CCC; position: relative;"> 
    <div class='control' tabindex='1'> 
    <div class='btn'></div> 
    <i class="icon-search ion-search" style=" 
    content: url('https://cdn4.iconfinder.com/data/icons/wirecons-free-vector-icons/32/add-128.png'); 
    width: 55px; 
    position: absolute; 
    left: 10%; 
     top: 8%; 
     outline: none;"></i> 
    </div> 
    <i class='icon-close ion-ios-close-empty'>CLOSE</i> 
</div> 

Как я могу исправить «+» отображается в Chrome, но не в IE.

css url() not recognized in internet explorer 10 объясняет использование фона вместо content, но это не работает в моем случае.

+3

Возможный дубликат [CSS URL(), не признаваемые в Internet Explorer 10] (http://stackoverflow.com/ вопросы/16132460/css-url-not-known-in-internet-explorer-10) – jonrsharpe

+0

Фон не отображается в Chrome. Я уже пробовал этот подход – Si8

+1

Тогда, может быть, http://stackoverflow.com/questions/18202306/ff-and-ie-dont-load-img-src-from-css, если вы уже сделали это исследование * упомяните об этом *. – jonrsharpe

ответ

2

Вместо использования контента на не псевдо элемента, вы должны использовать фоновое изображение вместо этого.

Я обновил your fiddle

Но она будет идти, как это:

.icon-search { 
    background-image: url(https://cdn4.iconfinder.com/data/icons/wirecons-free-vector-icons/32/add-128.png); 
    background-size: 100%; 
    width: 55px; 
    height: 55px; /* make sure to include height as well */ 
    position: absolute; 
    left: 10%; 
    top: 8%; 
    outline: none;  
} 
+0

Мне не хватало высоты. .. WOW !!! Спасибо. Сейчас он работает. – Si8

+1

@ Si8 Рад помочь вам, если он решит вашу проблему, обязательно отметьте ее как ответ для дальнейшего использования;). –

+0

Да ... Необходимо подождать Еще 1 минута ... не знаю, почему я получил нисходящее движение: / – Si8

2

Неправильный синтаксис.

Свойство content применимо к pseudeo-элементов ::after, ::before, :after и :before.

Если вы хотите, чтобы он отображался во всех браузерах, вы должны создать псевдоэлемент в <style></style> или внутри .css-файла. Кроме того, вы можете поместить в свой блок <img/> элемент <i></i>.


Reference @ w3schools