Анкерные псевдо-классы
Различные ссылки или ссылки, на которые указывает курсор мыши, можно выводить различным образом в поддерживающих CSS браузерах:
a:link {color: #808080 } /* непосещенная ссылка*/ a:visited {color: #008000 } /* посещенная ссылка */ a:hover {color: #008080 } /* курсор мыши указывает на ссылку*/ a:active {color: #00FF00 } /* выбранная ссылка*/
Примечания:
- Чтобы иметь эффект, a:hover ДОЛЖЕН следовать в определении CSS после a:link и a:visited!!Чтобы иметь эффект, a:active ДОЛЖЕН следовать в определении CSS после a:hover!!Имена псевдо-классов не зависят от регистра символов.
CSS2 - Псевдо-класс :first-child
Псевдо-класс :first-child соответствует определенному элементу, который является первым потомком другого элемента.
Примеры:
- В данном примере селектор соответствует любому элементу h1, который является первым потомком элемента div, и делает отступ для первой строки первого параграфа внутри элемента div: div > h1:first-child { text-indent:50px }
Этот селектор будет соответствовать первому параграфу внутри div в следующем коде:
<div> <h1> Первый заголовок в div. Имеет отступ первой строки. </h1> <h1> Второй заголовок в div. Не имеет отступа. </h1> </div>
но он не будет соответствовать параграфу в следующем коде HTML:
<div> <p> Параграф внутри div. </p> <h1>Первый заголовок в div. Не имеет отступа. </h1> </div>В данном примере селектор соответствует любому элементу strong, который является первым потомком элемента div, и задает font-style как italic для первого strong внутри элемента div: div:first-child strong { font-style: italic }
В следующем коде HTML strong является первым потомком элемента div :
<div>Изучайте -- <strong>язык программирования</strong> C++.</div>В данном примере селектор соответствует любому элементу b, который является первым потомком любого элемента, и задает text-decoration как none: b:first-child { text-decoration: none }
В следующем примере первый элемент b в коде HTML ниже является первым потомком параграфа и не будет подчеркиваться. Но второй элемент a в параграфе не является первым потомком параграфа и будет подчеркнут:
<p> Посетите <b>www.intuit.ru</b> и выучите CSS! Посетите <b>www.intuit.ru</b> и выучите HTML! </p>
CSS2 - Псевдо-класс :lang
Данный псевдокласс позволяет определить специальные правила для различных языков. В следующем примере класс :lang определяет тип кавычек для элементов b с атрибутом lang со значением "fr":
<html> <head> <style type="text/css"> b:lang(fr) { quotes: "'" "'" } </style> </head> <body> <p>Просто текст <b lang="fr">Выделенный текст</b> Остальной текст</p> </body> </html>
В примере показано, как выделить
- В примере показано, как выделить гиперссылку в документе цветом. <html> <head>
<style type="text/css"> a:link {color: #808080} a:visited {color: #FFFF00} a:hover {color: #00FF00} a:active {color: #0000FF} </style>
</head>
<body>
<p><a href="index.php">This is a link</a></p> <ol><b>Примечание:</b> <li><i>a:hover ДОЛЖЕН следовать в определении CSS после <b>a:link</b> и <b>a: visited!!</b></i></li> <li><i>a:active ДОЛЖЕН следовать в определении CSS после <b>a:hover!!</b></i></li> </ol>
</body> </html>В примере показано, как определить для гиперссылки другой стиль. <html> <head> <style type="text/css"> a.color:link {color: #808000} a.color:visited {color: #008080} a.color:hover {color: #C0C0C0}
a.size:link {color: #808000} a.size:visited {color: #008080} a.size:hover {font-size: 250%}
a.background:link {color: #808000} a.background:visited {color: #008080} a.background:hover {background: #C0C0C0}
a.family:link {color: #808000} a.family:visited {color: #008080} a.family:hover {font-family: sans-serif}
a.line:link {color: #808000; text-decoration: none} a.line:visited {color: #008080; text-decoration: none} a.line:hover {text-decoration: line-through} </style> </head>
<body> <p>Наведите курсор мыши на ссылки.</p> <p><b><a class="line" href="index.php">Меняем оформление текста у ссылки</a></b></p> <p><b><a class="size" href="index.php">Меняем размер у ссылки</a></b></p> <p><b><a class="background" href="index.php">Меняем цвет фона у ссылки</a></b></p> <p><b><a class="family" href="index.php">Меняем семейство шрифта у ссылки</a></b></p> <p><b><a class="color" href="index.php">Меняем цвет у ссылки</a></b></p> </body>
</html>В примере показано, как можно использовать псевдо-класс :first-child. <html> <head> <style type="text/css"> a:first-child { text-decoration:underline } </style> </head>
<body> <p>Посетите <a href="http://www.intuit.ru">Intuit</a> там много бесплатных курсов</p> <p>Посетите <a href="http://www.intuit.ru">Intuit</a> там есть бесплатные учебные программы</p> </body>
</html>В примере показано, как можно использовать псевдо-класса :lang. <html> <head> <style type="text/css"> b:lang(fr) { quotes: "'" "'" } </style> </head>
<body> <p>Просто текст<b lang="fr">Выделенные текст:</b> Сам текст.</p> </body>
</html>
Псевдо-классы
Данные параметры поддерживаются следующими браузерами: Internet Explorer, Firefox, Netscape.
:active | Добавляет специальный стиль активированному элементу | 4 | 1 | 8 | 1 |
:focus | Добавляет специальный стиль элементу, когда элемент находится в фокусе | - | - | - | 2 |
:hover | Добавляет специальный стиль элементу, когда указатель мыши находится над элементом | 4 | 1 | 7 | 1 |
:link | Добавляет специальный стиль непосещенной ссылке | 3 | 1 | 4 | 1 |
:visited | Добавляет специальный стиль посещенной ссылке | 3 | 1 | 4 | 1 |
:first-child | Добавляет специальный стиль элементу, который является первым потомком некоторого другого элемента | 1 | 7 | 2 | |
:lang | Позволяет автору определить используемый в заданном элементе язык | 1 | 8 | 2 |
Псевдо-классы и классы CSS
Псевдо-классы можно объединять с классами CSS:
a.silver:visited {color: #C0C0C0 }
<a class="silver" href="index.php">Silver</a>
Если ссылка в приведенном выше примере была посещена, она будет выводиться серебряным цветом.
Синтаксис псевдо-классов:
selector:pseudo-class {property: value}
Классы CSS также можно использовать с псевдо-классами:
selector.class:pseudo-class {property: value}