Pergunta

Eu sei que a Microsoft tem feito esforços na direção de XHTML e CSS semânticos e compatíveis com vários navegadores, mas ainda parece um PitA obter uma marcação elegante.Baixei e ajustei os adaptadores compatíveis com CSS e tudo mais.Mas ainda me sinto frustrado com códigos inchados e pouco atraentes.

CSS elegante e semântico com ASP.Net ainda é uma quimera?Ou finalmente é possível, só preciso de mais prática?

Foi útil?

Solução

A maneira mais fácil de gerar HTML e CSS elegantes é usar o framework MVC, onde você tem muito mais controle sobre a geração de HTML do que com Web Forms.

Outras dicas

Ver essa questão para mais discussão, incluindo o uso de MVC.Este site usa ASP.NET e a marcação é bastante limpa.Confira o HTML/CSS em MicrosoftPDC.com (um site no qual estou trabalhando) - ele usa formulários da web ASP.NET, mas estamos projetando com marcação limpa como prioridade.

Contanto que você use o designer do Visual Studio, provavelmente será uma quimera.Eu escrevo todo o meu código ASP.NET (todas as marcações e CSS) manualmente, simplesmente para evitar o designer.Versões posteriores do Visual Studio ficaram muito melhores em não danificar seus arquivos .aspx/.ascx, mas ainda estão longe de ser perfeitas.

Uma pergunta melhor é:Isso realmente vale a pena?Eu escrevo aplicações web e raramente a elegância do HTML/CSS/JavaScript resultante acrescenta algo ao objetivo final.Se o seu objetivo final é fazer com que as pessoas "visualizem a fonte" do seu material e o admirem, então talvez isso seja importante e valha todo o esforço, mas duvido.

Se você precisar de semântica, use XML para seus dados.Eu acredito na ideia de a web semântica, mas meus aplicativos não precisam ter nada a ver com isso.

Como disse DannySmurf, a construção manual é o caminho a percorrer.

Dito isto, você pode dar uma olhada no Expression Web.Pelo menos é bastante preciso na forma como renderiza as páginas.

@JasonBunting - Sim, vale a pena.A marcação semântica e entre navegadores significa que os mecanismos de pesquisa têm um tempo mais fácil (e, portanto, com classificações mais altas) com seu conteúdo, que os navegadores têm um tempo mais fácil (e, portanto, menos sujeito a erros) ao analisar seu conteúdo para exibição e que os futuros desenvolvedores têm um mais facilidade na manutenção do seu código.

Sim - é uma quimera.Desde que trabalhei com um web designer profissional em um projeto conjunto que ODIAVA a saída dos controles do lado do servidor ASP.net, parei de usá-los.Basicamente, tive que escrever aplicativos ASP.net como você escreveria um aplicativo PHP moderno.Se você tiver uma camada de negócios pesada, sua página ou código de UI pode ser mínimo.

Nunca olhei para trás desde então.O tempo extra gasto escrevendo tudo personalizado me economizou muito tempo tentando fazer o Visual Studio/ASP.net funcionar bem com CSS/XHTML.

não acredito que ninguém mencionou adaptadores CSS.muitos dos controles comuns usados ​​no asp.net (gridview e treeview, por exemplo) podem ser processados ​​por meio de um adaptador para alterar o html resultante que é enviado ao navegador.

se seguir a rota mvc não for uma opção viável, é possível escrever seus próprios adaptadores para qualquer um dos controles integrados do asp.net.

http://www.asp.net/CssAdapters/

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top