CSS: Оформление ссылок
Селекторы псевдоклассов
Псевдоклассы применяют стиль к элементам согласно их состоянию, которое может изменяться с помощью действий пользователя, а также может зависеть от расположения элемента в дереве документа. Селекторы псевдоклассов начинаются с двоеточия — :
и обычно добавляются сразу же после селектора типа без дополнительных пробелов между ними:
span:hover { color: red; }
Ссылки
Чаще всего селекторы псевдоклассов можно встретить, когда они применяются к ссылкам. Каждая ссылка может находиться в одном из четырех состояний: непосещённая, посещенная, активная (находящаяся под курсором мыши) и нажатая (удерживаемая кнопкой мыши). В CSS есть возможность стилизовать ссылку в каждом ее состоянии:
a:link { color: #0000ff; } a:visited { color: #ff00ff; } a:hover { color: #00ccff; } a:active { color: #ff0000; }Попробовать »
Приведенный выше код содержит четыре CSS правила. При этом в каждом из селекторов используется псевдокласс. Первое правило задает цвет для ссылок, по которым пользователи еще не переходили, если пользователь перешел по ссылке, то будет использовано второе правило. Псевдоклассы :hover
и :active
динамически изменяют отображение ссылки: :hover
стилизует ссылку только в то время, когда над ней находится указатель мыши, а :active
только тогда, когда пользователь уже щелкнул по ссылке, но кнопка еще удерживается.
Псевдоклассы :hover
и :active
формально называют динамическими, поскольку они применяют стиль только при взаимодействии пользователя с соответствующими элементами путем наведения курсора мыши и щелчка по ссылке соответственно.
Примечание: :hover
, помимо ссылок, можно использовать и с другими элементами, что позволяет создавать эффекты вроде подсветки строки таблицы при наведении на нее курсора мыши. Однако браузер IE6 и более ранние версии поддерживают использование данного псевдокласса исключительно с элементами <a>
.
Подчеркивание ссылок
По умолчанию текст ссылок всегда отображается подчеркнутым. Используя свойство text-decoration
вы можете либо совсем убрать подчеркивание ссылок либо сделать так, чтобы ссылка была подчеркнутой, только при наведении на нее курсора мыши.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Название документа</title> <style> a { text-decoration: none; } a:hover { text-decoration: underline; } </style> </head> <body> <p><b><a href="#">обычная ссылка</a></b></p> </body> </html>Попробовать »
Примечание: если подчеркивание ссылок отключается с помощью свойства text-decoration
, то единственным визуальным отличием между ссылками и обычным текстом будет их цвет. Это может привести к тому, что пользователям может быть трудно отличить ссылки от текста.
Псевдоклассы :first-child и :last-child
Еще одним примером псевдоклассов являются :first-child
и :last-child
. Псевдокласс :first-child
ссылается на первый по порядку дочерний элемент обозначенного родителя, в отличие от него :last-child
работает наоборот, он ссылается на последний дочерний элемент:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Название документа</title> <style> div p:first-child { color: green; } div p:last-child { color: blue; } </style> </head> <body> <div> <p>Первый дочерний абзац элемента div, он будет отображаться зеленого цвета.</p> <p>Второй дочерний абзац элемента div, он будет отображаться черного цвета, поскольку никаких правил для него не задано.</p> <p>Третий дочерний абзац элемента div, он же является последним дочерним абзацем. Цвет текста будет синим.</p> </div> </body> </html>Попробовать »
Поскольку первый абзац является первым дочерним элементом для <div>
, его текст будет отображаться зеленым цветом. Цвет текста второго абзаца будет соответствовать цвету заданному по умолчанию, то есть черному. Цвет текста третьего абзаца будет окрашен в синий цвет, поскольку третий абзац является последним дочерним элементом для <div>
.