Вся описанная техника мне кажется проблематичной.
Очки Дженнифер:
- Вы не можете прикрепить альтернативный текст к элементам div в целях доступности
- CSS Spriting и исправление IE6 PNG несовместимы
- Изображения не будут распечатываться на распечатках, если не выбрана опция клиента для печати фоновых изображений (это плохо для логотипов, меню и т. Д.)
- Для изображений на страницах (которые на самом деле не являются фоновыми изображениями) семантически плохо скрывать изображение в CSS.
1, учитывая, что это фоновые изображения, а не семантически сами по себе изображения, я думаю, что правильный подход - поместить этот текст непосредственно в разметку и скрыть его с помощью CSS, а не наоборот.
Номер 2 действителен, но не конец света. Действовать на 3 - это оскорбление, имхо - если пользователь не хочет печатать фоновые изображения, почему вы заставляете это делать? Опять же, это возвращается к семантической интерпретации.
Номер 4 Я полностью согласен с этим, но если вы все равно прячете изображение в конгломерат спрайтового изображения, что вы получаете? Вы могли бы обсудить это, но <img>
имеет семантическое значение, представляющее ресурс с URI, и поэтому URI должен быть отличным, не зависящим от интерпретируемого CSS. View / Copy / Save Image будет отрицательно влиять на это.
Это также, кажется, реагирует довольно медленно в моем FF (который по общему признанию подвергается злоупотреблению табуляции), я предполагаю, что математика отсечения требует немалых усилий.
Короче говоря, я думаю, что существующая техника фонового изображения / позиции превосходна.