css ou html5 para o primeiro e o último elementos

Os usuários podem inserir descrições que podem incluir parágrafos ou listas. Ou eles podem apenas inserir texto sem nenhum anexo<p> ou<ul> elementos. O que preciso fazer é remover a maior parte do preenchimento e da margem acima do primeiro elemento e abaixo do último elemento, para que o usuário insirao conteúdo tem uma boa borda apertada ao redor. Para que eu pudesse fazer um dos seguintes:

Use uma regra css que eu desconhecia para segmentar apenas o primeiro e o último elementosUse css3 ou html5 (presumo que exista algo dentro deles para fazer o que eu quero com facilidade) e espero que todos atualizem seus navegadores o mais rápido possível, enquanto os navegadores mais antigos obtêm uma versão ligeiramente mais feia da páginaEncontre o primeiro e o último elementos com Javascript e modifique de acordoModifique o html para adicionar uma classe como<p class="first">

Idealmente, a 1ª solução existe, existe? Eu estou bem com a segunda solução, se não, existe? Os 2 últimos que eu não ligo ...

ATUALIZAR: não me importo com o IE6. Mas preciso lidar com a situação de que, se houver apenas texto para começar, sem nenhum<p> ou<ul> ou outros elementos, na verdade nada de especial precisa ser feito para a margem / preenchimento superior.

questionAnswers(4)

yourAnswerToTheQuestion