- PR -

ASP.NETでのValidationSummaryコントロールの位置について

投稿者投稿内容
biac
大ベテラン
会議室デビュー日: 2001/10/22
投稿数: 106
投稿日時: 2002-07-05 00:57
引用:
私が持っているHTML&スタイルシート辞典(秀和システム)では、非推奨ではありますが、Align属性は指定できる旨の記述があります。



だから。

その「HTML&スタイルシート辞典」とやらに載っているのは、
どこの? どういう規格の? バージョンいくつの? 何? ですか?

※ ひょっとして、HTML というのは世界で唯一の規格しか存在しない、と思ってらっしゃいます?
karajan
ベテラン
会議室デビュー日: 2002/07/05
投稿数: 89
投稿日時: 2002-07-05 01:03
補足です。
HTML4.01でTransitionalDTDとFramesetDTDで使用可能だそうです。
ちゃんとできてます。
biac
大ベテラン
会議室デビュー日: 2001/10/22
投稿数: 106
投稿日時: 2002-07-05 01:59
引用:
HTML4.01でTransitionalDTDとFramesetDTDで使用可能だそうです。
ちゃんとできてます。


そうです。
W3C の HTML バージョン 4.01 の Transitional および Frameset では、div 要素に align 属性を指定できます。
http://www.w3.org/TR/1999/REC-html401-19991224/struct/global.html#h-7.5.4

単に HTML 4.01 と宣言したとき、つまり、
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
という文書型宣言のときは、W3C HTML 4.01 Strict と呼ばれ、「推奨されない」(Deprecated) 要素・属性は指定できません。
http://www.w3.org/TR/1999/REC-html401-19991224/struct/global.html#h-7.2

div 要素の align 属性は「推奨されない」属性ですから、W3C HTML 4.01 Strict では指定できません。

そのほか、W3C HTML 3.2 では、指定できます。
http://www.w3.org/TR/REC-html32#div

しかし、RFC2070 (HTML 2.0 + i18n) では、div 要素が存在しません。
http://web.sfc.keio.ac.jp/~mimasa/jweblint/rfc/rfc2070.html

また、JIS X 4156:2000 (ISO/IEC 15445:2000) の HTML (バージョン番号は無い) では、align 属性は存在しません。
http://www.y-adagio.com/public/standards/jis_html/html.htm#prefc
http://www.purl.org/NET/ISO+IEC.15445/15445.html

…などなど。

HTML によっては、<div align="center"> とすればよい場合もあれば、CSS を使わねばならない場合、あるいは、RFC2070 (HTML 2.0 + i18n) のように <p align="center"> などとせざるをえない場合など、いろいろあるわけです。

つまり、使う HTML の規格によって、対処方法を変えなければならないのです。
単純に「真ん中にしたけりゃ <div align="center">」などと覚えてはいけないのです。
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2002-07-05 09:41
引用:

かろうじて可能なのがスタイルシートを作成し、"text-align: center"を指定したクラスをValidationSummaryコントロールのCssClassプロパティに設定するという方法です。
しかし、そのためだけにスタイルシートを使うのもあまりスマートではない気がするので、できればスタイルシートなしでセンタリングしたいのです。


個人的な意見ですが
逆に、積極的にスタイルシートを使用すべきではないでしょうか。

HTML 3.2とHTML 4.0でWebページを見栄えよくするためにHTMLに各種属性(Attribute)が追加されました。これにより、多くのWebデザイナーが<body>タグにbgcolor=を指定して背景色を付けたり、<font>タグのsize=, face=, color=などのオプションを多用する
ようになりました。

ところが、これらの機能を多用してデザインされたWebページは見栄えがよくなる反面、
保守性が非常に悪くなります。

たとえば、Webページの背景色に季節感を持たせるために、四季ごとに背景色を変えて表示させようとした場合、個々のページの<body>タグを

<body bgcolor="cyan"> ==> <body bgcolor="yellow">

のように書き換える必要があります。

CSS(Cascading Style Sheets)は、このような不都合を回避するために、背景色、
文字サイズ、フォント、色などHTMLの属性(プロパティ)を外部ファイルに定義
して一元管理することができます。

CSSをWebページに埋め込んでいる方がいますが、これはCSS本来の使い方を理解
していないのではないでしょうか。

CSSは、外部ファイルに定義してHTMLの<link>タグで取り込みます。この場合、
external.cssを書き換えればすべてのWebページに自動的に反映されます。

<link rel="stylesheet" type="text/css" href="external.css">


Note:
マイクロソフトの設計上の問題で、ValidationコントロールのCssClassにcolor:xxx
のプロパティを指定しても正常に動作しない不具合があります。

Happy Programming
Akio Kasai
biac
大ベテラン
会議室デビュー日: 2001/10/22
投稿数: 106
投稿日時: 2002-07-05 10:39
引用:
CSSは、外部ファイルに定義してHTMLの<link>タグで取り込みます。この場合、
external.cssを書き換えればすべてのWebページに自動的に反映されます。



それが CSS の標準的な使い方、と覚えたほうがよいですね。
JIS X 4156:2000 (ISO/IEC 15445:2000) などでは、style 属性が無いわけですし。


# 製造業のサイトでも、JIS に従っていないのがほとんどなのはなぜだろう?

スキルアップ/キャリアアップ(JOB@IT)