Я хочу использовать иконографию в веб-интерфейсе, сохраняя при этом язык контекста того, чего добьется нажатие на ссылку, но, возможно, не отображая текст и переполненное пространство интерфейса. Например, используя экраны CRUD, я хочу отобразить значок плюс для добавления элемента, значок минус для удаления, значок карандаша для его редактирования и увеличительное стекло для поиска другого элемента. Для этого есть несколько способов.
Визуализация элемента img
внутри якоря a
. Атрибут img alt
будет описывать, что представляет значок (alt = "значок карандаша"), а атрибут title будет описывать предполагаемое последствие (т. Е. "Нажмите здесь, чтобы редактировать этот виджет").
Визуализируйте только тег nchor a
и используйте css для отображения изображения в качестве фона. В этом случае содержимое якоря должно описывать предполагаемое последствие, однако его необходимо заключить в элемент span, чтобы его стиль отображения мог быть установлен равным none . Якорь также должен содержать атрибут заголовка, соответствующий содержимому (конечно, без окружения).
Мне кажется, что вариант № 2 легче реализовать в приложении asp.net mvc. Поскольку значок - это проблема дизайна, а не разметки, имеет смысл определить изображение в CSS. Это также упрощает работу с точки зрения обслуживания кода ... изменение местоположения img src потребует только изменений в файле CSS и отсутствии файлов представления. Удаление CSS может привести к тому, что приложение также перейдет к полнотекстовой доступности.
Для меня пахнет смешной частью - вложением содержимого ссылки в промежуток, чтобы в CSS можно было установить disply: none;
. Другое дело, что если я использую селектор: hover, чтобы поменять изображение и обеспечить эффект опрокидывания / разворачивания, то, как представляется, для замены изображения требуется больше времени, чем при использовании JavaScript.
Я что-то здесь упускаю?