- lapitoop.ru - http://lapitoop.ru -

CSS-дизайн: нестандартное подчеркивание ссылок

Автор Алексей дата: Август 8, 2008 @ 6:58 пп в Сайтостроение | Нет комментариев

Давно не публиковал информацию о разработке сайтов. Вот хорошая (хоть и старенькая) статья о нестандартных ссылках:

CSS Design: Custom Underlines
автор: 2003 © [1] Stuart Robertson и [2] A List Apart
перевод: 2004.02.21 [3] Мамяшев Марат

Несмотря на то, что веб-дизайнеры имеют в своем распоряжении широкую палитру возможностей управления внешним видом документов, основные функции CSS не предусматривают того же относительно вида подчеркивания ссылок на страницах. Но благодаря нескольким новым приемам, вы сможете изменить так же и вид ваших гиперссылок.
Такой «обогащенный» вид ссылок позволяет внести некоторое разнообразие, что, безусловно, может быть полезно. Этот прием так же может быть использован для разграничения различных типов ссылок внутри самого сайта.
Итак, начнем.
Начните с создания вашей собственной черты. Графика должна повторяться горизонтально, и если Вы хотите, чтобы сквозь нее был виден фон сайта, то создайте прозрачный .gif файл.
Если ваша линия подчеркивания в высоту больше нескольких пикселей, вам следует увеличить высоту отображения строки абзаца (тэг <p>) для того, чтобы добавить больше пространства между ее нижней и верхней границами.
p { line-height: 1.5; }
Прежде чем мы займемся созданием собственных линий подчеркивания для ссылок, нам надо отключить вариант, установленный по умолчанию:
a { text-decoration: none; }
Чтобы создать свой собственный вид подчеркивания ссылки, возьмем нарисованную нами картинку в качестве фона:
a { background-image: url(underline.gif); }
Нам нужно, чтобы наша графика повторялась только горизонтально под нашим текстом, и ни в коем случае не вертикально, т.к. тогда она будет отображаться позади текста самой ссылки. Ограничим повтор фона горизонтальной осью.
a { background-repeat: repeat-x; }
Чтобы быть уверенным в том, что наша графика отображается под текстом независимо от размера шрифта, мы будем использовать свойство «background-position», которое и «привяжет» изображение к нижней части строки. Для различных видов изображений — таких, например, как стрелки, — можно использовать другие варианты выравнивания. В нашем случае будет использоваться выравнивание по правому нижнему углу.
a { background-position: 100% 100%; }
Для того, чтобы добавить чуть-чуть свободного пространства между графикой и текстом, нужно увеличить нижний отступ. Текущая позиция нашего изображения под текстом ссылки будет варьироваться в зависимости от размера шрифта. Я предлагаю для начала сделать нижний отступ равным высоте вашего изображения, а потом отрегулировать его в зависимости от ваших вкусов:
a { padding-bottom: 4px; }
Так как картинка помещена внизу нашего элемента, нам следует позаботиться о том, чтобы ссылка не переходила на другую строку. (Если перенос будет разрешен, подчеркнутой будет только нижняя строка). Используем свойство CSS «white-space property», чтобы запретить перенос.
a { white-space: nowrap; }
Теперь все эти свойства можно объединить:
a {
text-decoration: none;
background: url(underline.gif) repeat-x 100% 100%;
padding-bottom: 4px;
white-space: nowrap;
}

Если же вы хотите, чтобы этот эффект появлялся только при наведении курсора на ссылку, просто присвойте свойство "background" и его описание псевдо-классу ":hover".
a {
text-decoration: none;
padding-bottom: 4px;
white-space: nowrap;
}

a:hover {
background: url(underline.gif) repeat-x 100% 100%;
}


Также рекомендую следующие записи:


Статья распечатана с lapitoop.ru: http://lapitoop.ru

URL статьи: http://lapitoop.ru/css-dizajn-nestandartnoe-podcherkivanie-ssylok/

URL-ы в этой записи:
[1] Stuart Robertson: http://www.alistapart.com/authors/stuartrobertson/
[2] A List Apart: http://www.alistapart.com/
[3] Мамяшев Марат: mailto:mms1983@mail.ru
[4] усиление MD5 или солим пароли: http://lapitoop.ru/salt_md5/
[5] Редизайн блога #2: http://lapitoop.ru/redizajn-bloga-2/
[6] Редизайн блога: http://lapitoop.ru/new_design/
[7] Редизайн highway.irk.ru: http://lapitoop.ru/redesign_highway/
[8] Размеры базы MySQL: http://lapitoop.ru/razmery-bazy-mysql/

Copyright © 2012 lapitoop.ru. All rights reserved.