Създаден от
See the Pen link_pseudo_clases by Iva Popova (@webdesigncourse) on CodePen.
selector:pseudoclass {
property:value;
...
}
a:link{
color: green;
}
a:visited{
color: gray;
}
:hover
може да се прилага не само върху хиперлинкове, но и всички останали HTML елементи.
a:hover{
border-bottom: 1px dotted #000;
}
See the Pen hover not working on <a&rt; by Iva Popova (@webdesigncourse) on CodePen.
See the Pen hoverExamples by Iva Popova (@webdesigncourse) on CodePen.
Pure CSS drop-down menu
a:active{
font-size: 120%;
}
a:focus{
font-weight: bold;
}
See the Pen active and tabindex demo by Iva Popova (@webdesigncourse) on CodePen.
:nth-child(x)
- се чете елемент/и (какъвто и да е), който е X-то детеselector:nth-child(x)
- се чете елемент/и, селектиран от selector, който е X-то детеSee the Pen :nth-child(x) - example by Iva Popova (@webdesigncourse) on CodePen.
nth-child(an+b)
, n е брояч, който започва от нула и се увеличава с 1, автоматичноan+b < 0
, няма да се селектира нито един елемент (няма елемент с индекс -1, например)
/* селектира първите 3 параграфа */
p:nth-child(-n+3){
color: magenta;
}
See the Pen nth-child(an+b) by Iva Popova (@webdesigncourse) on CodePen.
/* селектира параграф, ако е последно дете */
p:nth-last-child(1){
color: magenta;
}
nth-of-type(an+b) at MDN
See the Pen :nth-of-type(an+b) by Iva Popova (@webdesigncourse) on CodePen.
See the Pen nth-child() vs. nth-of-type() by Iva Popova (@webdesigncourse) on CodePen.
See the Pen nth-child() vs. nth-of-type() 2 by Iva Popova (@webdesigncourse) on CodePen.
/* селектира всички елементи, когато те са маркирани от потребителя */
input[type="radio"]:checked{
width: 50px;
height: 50px;
}
Същата логика е приложима и за checkbox
See the Pen Styling_radio_inputs by Iva Popova (@webdesigncourse) on CodePen.
:checked
- пример за "hamburger menu" без JavaScript:checked
. С JavaScript e много по-лесно и естествено да създадем същата функционалност!See the Pen :checked for Hamburger menu by Iva Popova (@webdesigncourse) on CodePen.
p::first-line
)div::before
) или в края на даден елемент (div::after
)
selector::pseudoelement {
property:value;
...
}
В CSS3 разделителят за псевдо-елемент е ::
за да се отличава от псевдо-клас. В предишните версии на CSS се използва само :
за разделител. Но на практика работят и двата вида разделители.
p::first-letter{
font-size: 2em;
color: red;
}
p::first-line{
font-size: 2em;
color: red;
}
Размера на първия ред се определя динамично от браузера, в зависимост от големината на текста и вюпорта.
::first-line
and ::first-letter
examples See the Pen :first-line by Iva Popova (@webdesigncourse) on CodePen.
::before
вмъква анонимен поредов елемент като първо дете на селектирания елемент.::after
вмъква анонимен поредов елемент като последно дете на селектирания елемент.content
, което е задължително да присъства
.myQuote::before{
content: '❝';
color: gray;
}
.myQuote::after{
content: '❞';
color: gray;
}
Разбира се, в елементи, които нямат съдържание, като IMG или BR, не можем да вмъкваме други елементи.
::before
and ::after
simple exampleSee the Pen ::before and ::after examples by Iva Popova (@webdesigncourse) on CodePen.
See the Pen unicode in content property by Iva Popova (@webdesigncourse) on CodePen.
See the Pen .clearfix with pseudo-elements by Iva Popova (@webdesigncourse) on CodePen.
Повече за float и clearfix: CSS-Tricks: Techniques for Clearing Floats
CSS: :before and :after pseudo elements in practice - Krasimir Tsonev
See the Pen CSS drop-down menu over content by Iva Popova (@webdesigncourse) on CodePen.
<body>
<h1>My Todo List</h1>
<ul class="todoList">
<li class="emoji emoji-smile">Learn HTML </li>
<li class="emoji emoji-sad">Learn CSS</li>
<li class="emoji emoji-loudly-crying">Learn JavaScript</li>
</ul>
</body>
These slides are based on
customised version of
framework