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