Pseudo classes first-child e last-child servem para aplicar css no primeiro ou último ítem de uma seletor CSS.
É muito bom usar pra colocar cantos arredondados.
Normalmente as pessoas colocam :
<ul> <li class="primeiro"></li> <li></li> <li></li> <li></li> <li></li> <li class="ultimo"></li> </ul>
E depois aplicam css no li.primeiro e no li.ultimo, e quem tem que programar depois server side no server que se vire fazendo ifs.
Isso não é necessário!
Veja no exemplo de First Child, como colocar uma cor diferente no primeiro ítem do menu.

HTML :
<ul> <li>Programas Relacionados</li> <li>Comentários (4)</li> <li>Espalhe este Post</li> </ul>
CSS :
#tabs ul li{
/* font padrão - preto */
font-color: #000;
/* IE - CSS Condicional */
font-color: expression(this.previousSibling == null ? '#F00' : '#000');
}
/*
Pra todos os outros browsers é mais simples,
é só usar o pseudo-classe :first-child
*/
#tabs ul li:first-child{ font-color: #f00; }
Funciona como um operador ternário normal :
Propriedade css : expression(condição ? valor verdadeiro : valor falso )
E se tivesse que escolher o último ítem?
Veja no exemplo, como colocar uma borda somente no último ítem:
#tabs ul li{
border: 0;
border: expression(this.nextSibling == null ? '1px solid #000' : '0');
}
#tabs ul li:last-child{ border: 0; }







Danilo é programador interface da AgênciaClick, corinthiano, vegan e geek. Gasta suas horas com xadrez, poker, vendo futebol e esporadicamente dedica 5 minutos semanais à Belinha - mas é mto provável que esse tempo agora seja dividido com o TidBits... Danilo sabe php, rails, javascript, xhtml, css, jquery, webstandards, seo, sql, opensocial, etc. E já fez sites para espn, fiat, fila, umbro, fgv, gatorade, petrobras, etc. Veja o 
Belinha agora é arquiteta de informação na RMG Connect, está cozinhando melhor, mas postando cada dia menos... ainda assim, sempre que dá aparece aqui no TidBits para dar seus pitacos sobre desenvolvimento... (Belinha é casada com o Danilo)
October 15th, 2008 at 6:11 pm
[...] com o exemplo de :first-child e :last-child, para usar min-height e max-height é necessário css [...]
November 12th, 2008 at 9:03 am
[...] o suporte a imagens alpha ( pgn24 ) tão usado pelos designers hoje em dia e os pseudo seletores :first-child e :last-child. Essas 3 opções, somente essas 3 não tem jeito mesmo, é colocar expression no seu css e filter [...]
February 13th, 2010 at 3:57 pm
Aplicação:
.tabela tr td{
/* font padrão – preto */
color: #000;
/* IE – CSS Condicional */
color: expression(this.previousSibling == null ? ‘#ff0000′ : ‘#000′);
}
/*
Pra todos os outros browsers é mais simples,
é só usar o pseudo-classe :first-child
*/
.tabela tr td:first-child{ color: #f00; }
Nome
André
Descrição
Teste
Nota
10