人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

HTMLでwebページを作る際、<table weight=”800”>をページ全体に指定し、その中の表などのtableタグにweight=パーセント指定をするというのはどうでしょうか?全体が800pxで決まっているためウィンドウサイズによって表がずれることはないのですが、ブラウザによっては中の表が崩れてしまうという話を聞きました。
実際のところはどうなのでしょうか?
tableの横幅指定は全部ピクセルで決めるべきでしょうか?
パーセント指定をしているのは、項目追加や枠線のサイズの変更時に、変更しやすいからです。

●質問者: router
●カテゴリ:ウェブ制作
✍キーワード:HTML Web すいか どうでしょう ウィンドウ
○ 状態 :終了
└ 回答数 : 8/8件

▽最新の回答へ

1 ● mady
●43ポイント

http://www.htmq.com/

HTMLクイックリファレンス

回答になっているか自信がありませんが。

ブラウザによって崩れる理由はパーセント指定を行った場合、ウィンドウのサイズを基準にしサイズを決めるものと、ブロック属性の入れ子の親のタグのサイズを基準にサイズを決めるものがあるためです。

私のオススメは、imgタグを使用する方法です。

tableタグを入れ子にはしません。tableおよびtdにパーセント指定を行います。次にtd要素の中にimgタグを記述します。imgタグの幅を最小表示時の幅に指定してください。画像は1px*1pxの透明の画像を使用するといいと思います。

◎質問者からの返答

ご回答ありがとうございます。

ブラウザの、対応によって違うということですね。

各ブラウザの対応状況などがわかるページなんかが有ると良かったのですが、難しいですね。


2 ● corutika39
●0ポイント

すべてがピクセル指定でなくてもいいと思います。私もサイトをつくる時テーブルやフレーム幅はパーセントで指定してます。そのほうがどのサイズのウィンドウでも10%なら10%分だけの横幅になってくれるからです。

ページ全体に指定するテーブル幅が100%でもいけるような気がするのですが、どうでしょうか

◎質問者からの返答

その方法ではサイトのデザインが崩れてしまいます。

質問文の場合ウィンドウサイズが小さくても、テーブル幅は800pxとなる。でも、その中の入れ子にしたテーブルはパーセントで指定し、項目の追加や削除などを、テーブルのwight指定を変更せずに行えるのが、期待している動作です。

しかし、入れ子のテーブルのwightにパーセント指定をすると表示が崩れることがあると聞き、実際のお話を知りたく、質問をしました。


3 ● fake234
●47ポイント

http://www.geocities.co.jp/Playtown-Domino/4598/HTML_05.html

Note when TABLE is Generated for NN

ネスケ4.xのバグです。

(weight→widthと読み替えていいですよね)

TABLEの幅:widthを相対指定にした場合に、

TDの幅を絶対指定しても無視されるというものです。

おそらくこのことをおっしゃっているのだと思います。

◎質問者からの返答

>(weight→widthと読み替えていいですよね)

何でこう書いてしまったのか・・・間違いました・・

ご回答は、微妙に違います。

1番目の方のいっている、テーブルの入れ子になっている状態です。

一番外のテーブルが幅800px。その中にあるテーブルが幅%指定になっています。

でも、テーブルの幅指定に関する不具合なら何でも知りたいのでありがとうございます。


4 ● 虎子
●0ポイント

はじめに確認ですが「weight」ではなく「width」のことですね?

たとえば入れ子のテーブルを「20%」「80%」とすれば、

800pxの範囲内で2:8(つまり160pxと640pxです)に分けてくれますので大丈夫です。

全部ピクセルで指定する必要はありません。

実際に試してみると分かりますよ。

◎質問者からの返答

もちろんそのように使っていますが、

「ブラウザによっては中の表が崩れてしまうという話を聞きました。」


5 ● ke_ishi
●20ポイント

http://hp.vector.co.jp/authors/VA022006/css/visualren.html#width

視覚整形モデル - CSS2リファレンス

個人的には、レイアウト目的ならtableではなくdiv+スタイルシートのfloat指定で…と考えます。

でも、以下のようなHTMLで、最近のブラウザなら表示は崩れなさそうですけどね。多少の割り切りは必要かも?です。少なくとも、CSS的には正しい指定の仕方のようですし。

<table width=”800” border=”1”><tr><td>

<table width=”10%” border=”1”><tr><td>ここは外のテーブルの10%の幅になるはず</td></tr></table>

</td></tr></table>

◎質問者からの返答

スタイルシートも、結構ブラウザによって表示が違ったりすると聞きますが、どうなんでしょうかね。

そろそろ真剣にスタイルシートも勉強しなければならないかも知れませんね。


1-5件表示/8件
4.前の5件|次5件6.
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ