Style vs ClassName
Lendo um artigo no quirksmode.org sobre a questão do título, decidi postar a minha opinião sobre o caso.
O q é melhor (em todos os aspectos), trocar propriedades na propriedade "style" ou trocar o className do elemento? (Benchmark - style vs. className)
Na minha opinião, seria a segundo opção.
Isso pq há uma centralização do posicionamento e do visual no css. Nessa forma temos "view's" do elemento, controlamos não apenas 1 propriedade (troca direto na propriedade style) e sim todo o conjunto atribuido como o proprio elemento e seus filhos e próximos irmãos.
<div class="block"></div>(normal view)
<div class="block openup"></div>
div.block{
border:1px solid gray;
display:none;
}
div.openup{
border-color:red;
display:block;
}
Nesse caso estou controlando uma view para "abrir" o item e ainda controlar a cor da borda, outro detalhe é que a class continua sendo legível por alguém inexperiente em css.
A idéia de view nada mais é que um pedaço do conceito de skin, esse pensamento nos tras um horizonte maior em relação a interface.
Poderiamos agrupar views para criarmos skins complexos, como menu (e suas views) top (e suas views) e até mesmo o conteúdo, bem ao estilo ZenGarden.
Na primeira opção (propriedade style) teriamos:
<div class="block" style="display:none;border:1px solid red;"></div>
Dessa forma as propriedades do estilo seriam strings perdidas no javascript, dificultando o trabalho tanto do designer quanto do programador. Também não poderiamos controlar filhos e irmãos nessa forma.
Outro detalhe é que ao mexer no código o programador (por exemplo) pode não saber o resultado final dessas propriedades ou até mesmo terá que visualizar mentalmente o resultado na hora da leitura, ocupando desnecessariamente o tempo dele.


0 Comments:
Postar um comentário
<< Home