Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

naiani

tag#id ou #id?

Recommended Posts

Tenho tambem uma duvida e nao consegui encontrar no Google, provavelmente pq nao estou sabendo procurar. Nao precisam falar a resposta, mas se puderem me indicar links onde eu ache a mesma, tudo bem.

Queria saber qual a diferenca entre usar, no CSS, a sintaxe #id {atributos;} e a sintaxe tag#id {atributos;}. Pergunto pq foi uma das coisas que resolveram meu problema ontem, mas nao entendi o motivo.

Por ex, tenho a DIV #content, com um atributo width: 80%;. Qual a diferenca entre #content {width: 80%;} e div#content {width: 80%;}???

 

Obrigada!

 

--------

 

Update: Entao, descobri a diferenca SINTATICA entre os 2. #id {atributo;}, a engine procura o primeiro elemento que tiver essa id e usa ela pra renderizar o mesmo. tag#id {atributo;}, a engine procura a tag especifica que contem aquela id pra renderizar de acordo com a regra. Mas qual a diferenca PRATICA? Pois de qq forma, eu soh tinha uma camada utilizando cada id.

Compartilhar este post


Link para o post
Compartilhar em outros sites

teoricamente, quando você informa uma classe antes de qualquer outra x, você está definindo que somente a classe recebe a outra x..

 

complicado, certo?!

 

let's try again!

 

.campo p {padding:0;}

com o cód acima, digo que os parágrafos que estão contidos na classe .campo devem ter 0 padding, traduzindo em miúdos, todos os outros paragrafos terão o espaçamento padrão a não ser os que estão dentro do .campo.

 

.campo {padding:0;}p {padding 0;}

ao contrário desta informação que o .campo terá espaçamento interno 0 e o todos os parágrafos de todo o site, terão como padrão espaçamentos 0;

 

neh!? :P

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou dar uma diferença na prática que percebi uma vez, se você declara o seguinte:

tag#id {background-color:red;}#id {background-color:blue;}
O fundo do elemento ficará vermelho.

 

Se fizer assim:

#id {background-color:red;}tag#id {background-color:blue;}
Aí ficará azul :)

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu particularmente utilizo tag#id... Ajuda bastante inclusive na hora de identificar no código o que é o que... Se informo, por exemplo, div#links, sei que a formatação está aplicada à uma div logo de cara, sem a necessidade de verificar no HTML a qual elemento a id links está atribuída... Se estivesse somente #links, a formatação poderia estar sendo aplicada à qualquer elemento, sendo necessário nesse caso verificar lá no código a qual elemento está atribuída essa id...

 

Mas é interessante saber que isso interfere, como nosso amigo #INSIDE# postou acima... Vejam que quando declaramos a tag antes do id, é como se ele recebesse o !important das propriedades, onde mesmo que você tenha uma declaração posterior, esta prevalecerá...

Compartilhar este post


Link para o post
Compartilhar em outros sites

É bom saber esse lance sobre 'overwrite' de propriedades, muitas vezes pode causar problemas, e se agente entender fica melhor pra solucionar :)[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.