Pseudo-classes of CSSAuthor: CSS Drive
Pseudo-class are an interesting group of selectors in CSS that apply to elements when they're in a certain state or condition, such as with a link, when the mouse is over it. This makes for some interesting and lightweight visual effects.
| Pseudo-class (CSS2.1) | Description | Applies to |
|---|---|---|
| :link | Applies to links that have not been visited. | links |
| :visited | Applies to links that have been visited. | links |
| :hover | Applies to an element which the mouse is currently over. | all |
| :active | Applies to an element currently being activated by the user (ie: the mouse is held down over). | all |
| :focus | Applies to an element while it has the user focus. | all |
| :first-child | Matches an element that is the first child of some other element. | all |
| :first-letter | Applies to the first letter of a paragraph. | block level elements |
| :first-line | Applies to the first formatted line of a paragraph. | block level elements |
| :lang | Applies to an element when it's in the designated language. | all |
The first four pseudo classes are typically used on links, even though 3rd and 4th apply to elements in general. This is because in IE (as of IE6), ":hover" and ":active" don't work on elements other than links.
CSS Example #1 (link pseudo-classes):
A:link { color: red }
/* unvisited links */
A:visited { color: blue } /* visited links */
A:hover { background-color: yellow } /* user hovers over link*/
A:active { color: lime } /* active links */
This is a very common CSS definition to manipulate the look of links on the page. The order in which you define the four selectors is important, typically known as LVHA (link visited hover active). If you alter the order, some of your selectors will be suppressed and not take effect due to the way CSS handles cascade/ ordering.
CSS Example #2 (:first-child pseudo-class):
img:first-child{ border: 1px solid gray; }
This applies a border to any image that is the first child of another element.
CSS Example #3 (:lang pseudo-class):
:lang(fr) { font-weight: bold; }
This gives elements that are determined by the browser as French (using a variety of methods) a bold font.
Heres a cool way to remember the order of the four selectors, "LVHA (link visited hover active)",....
Just think 'LOVE' (LV) and 'HATE' (HA)....
Works for me!
Slackerbabe, nice :-)
any ideas on using :first-child with IE? So far it doesn't work for me!
I am working on site that has three lists which require formatting of elements but I wish to make the first item look different. Forefox works well (of course) but dirty IE is refusing.
Thanks for this css.It will work completely and help me to make things in my site easier..
onebuttoninfo.netclick2infoplanet.comonebuttonsearch.netsearchbasket.netsupplyinfo.netlearntoreach.comfindandlearn.comteachmemore.netsearchcosmos.netcocoindirectory.comdiscovertoinfo.comcocoinfo.netultimateinfo.netreachtoinfo.comlearn2info.comsurfingforinfo.comtaketolearn.comalwaysdirectory.com
Great work done!
bid directory
Great example thanks for help!
Thanks for this documentation on CSS2.1, well done!
looks very interesting.
thanks for article.
regards,
http://www.anarsist.org/
Annoucement: I'm looking for a few news posters. Interested?
| CSS Forums: latest threads | Last Post Info |
|---|---|
| css frames layout w/o using iframes (1) | 05/10/2008 04:57 am |
| please review my site (21) | 05/09/2008 10:42 am |
| Please Review my site (1) | 05/09/2008 10:04 am |
| Line coming in FF but not in IE6/7 (4) | 05/06/2008 09:46 am |
| req: Need help with the CSS of my WordPress Theme (2) | 05/06/2008 04:40 am |