ASP.NETコントロールとHTML生タグの微妙な関係に悩む。

たまには開発系の話を書けという神の声が。

ASP.NETでWebアプリを開発しています。その成果は「なおさん亭::新館」で披露していますので、よろしかったらご覧になって下さい。

ASP.NETは、初期のころと違って見た目に関する設定はほとんどCSSで行うことが当然のようになっています。

これが最近、けっこうなジレンマなのです。

例えば、Panelコントロールの見た目、背景色はBackgroundColor属性で指定するといった具合でしたが、今はCssClass属性に見た目のためのクラス名を与えて、クラスに対応するスタイル定義はどこかに書いておくというようになっています。

Paneコントロールはレンダリングされるとdiv要素になりますので、だったら最初からdivで囲っておいて、普通にclass属性を与えてやればいいのではないでしょうか?

その方が、コンパイルする必要がない分、サーバの負担も軽くなりますし。しかも、id属性の指定を自分でできますので、JavaScriptからの参照も容易になります。

突き詰めていくと、Panel(div)もLabel(span)もLiteral(対応タグなし)もHyperLink(a)もその存在自体が微妙になってくるわけで、だったらASP.NETでなくてもいいじゃないかというところまで話が進んでいくわけです。

まぁASP.NETには便利なコントロールがたくさんありますから、そう極端な話にはなりませんが。

こういったことを考えながらコーディングするのは、精神衛生上よろしくなく、どこかでガイドラインをさっと引いてもらえないかな、と思っていますが、そんなものはあるのでしょうかねぇ?

コメント