2012-04-09 5 views
0

Этот код CSS работает во всех браузерах, кроме FireFox. Зачем ? Как я могу это исправить?Firefox CSS image box

.img_box { 
    width: 110px; 
    height: 160px; 
    background-repeat: no-repeat; 
    background-position: center center; 
    background-image: url('https://www.google.com/images/srpr/logo3w.png'); 
} 

Заранее благодарен.

EDIT: Вот HTML, который я хочу использовать:

<img class="img_box" /> 
+0

отлично работает для меня – gabitzish

+0

Работы/не работает дихотомии не взаимно исчерпывающим. Итак, я отвечу «да». – landons

+1

Что не работает? Высота? Ширина? Фоновое изображение? Специфика человека! – j08691

ответ

1

Когда Firefox встречает изображение без источника, он заменяет изображение с его альтернативным текстом. Я лично считаю это очень раздражающим, так как это означает, что я не могу тестировать макеты, если я специально не создаю образы заполнителей, и если эти изображения будут недоступны по какой-либо причине, макет полностью сломается.

К сожалению, мне еще предстоит найти решение этой проблемы.

В вашем случае, однако, вам будет гораздо лучше использовать div и добавить display:inline-block к вашему CSS, вместо того чтобы использовать изображение.

+0

Причина, по которой Firefox делает это так, чтобы пользователь мог прочитать текст alt (что-то делает другие браузеры чрезвычайно сложными). Это тот случай, когда Firefox стремится получить право; тестирование с изображениями без src является краевым случаем. И, конечно, если макет ломается, если изображение недоступно, оно также ломается, если у пользователя отключены изображения, поэтому для начала он просто разбит. Тем не менее, вы можете создать свои «просто тестирующие» изображения с помощью «-moz-force-broken-image-icon: 1», чтобы заставить их отображаться с помощью квадрата размера, даже если фактического изображения нет. –

+0

Erm ... поэтому, когда браузер показывает сломанное изображение с текстом alt рядом с пиктограммой, это невозможно прочитать? Я думаю, не на маленьких изображениях, но все же ... –

+0

Точно. Для подавляющего большинства изображений небольшого или среднего размера текст alt, если он написан правильно, слишком длинный, чтобы на самом деле быть читаемым в маленьком ящике, который показывает большинство UA. –

0

solution1:

.img_box { 
    width: 110px; 
    height: 160px; 
    background-repeat: no-repeat; 
    background-position: center center; 
    background-image: url('https://www.google.com/images/srpr/logo3w.png'); 
    display: block; 
} 

solution2:

<div class="img_box"></div>