- 締切済み
ホームページビルダー14で作成しています。表(セル)が固定できなくて困
ホームページビルダー14で作成しています。表(セル)が固定できなくて困っています。 過去ログ等で確認したことことはすべて行ったつもりなのですがどうにもうまくできません。 新規作成から2X2の表を作りました。 (1)(2) (3)(4)と表記します。 (1)はwidth=200,height=70の指定、(2)はW=700,H=70、(3)はw=200,h=20、(4)はW=700,h=20です。 枠は表示としました。更に上記表の下に1X2の表を作ります。(5)(6) (5)は(3)と同じ、(6)は(4)と同じです。 画像をファイルから(1)に貼り付けます。(1)のセルよりも画像が大きいので一度表の外に貼り付け後 リサイズしてから(いきなり(1)に貼り付けるとセルが大きくなってしまうため)貼り付けます。 次に(3)に別の画像を同じ手順で入れます。 この時に上(2x2)の表のサイズが下(1x2)の表のサイズと変わってしまいます。 ソースを確認してもWとhの記述は最初と変わりありません。IEで確認すると枠がずれています。 また、セルの幅が200pixcel、枠1pの時、合計で200pなのですか?202pなのでしょうか 同様に200pと700pの幅の時の全体の長さは900p、903pどちらなのでしょうか? 属性やスタイルをいじってみたのですが良くわかりません。 列2つを囲んで指定し、そのwidthと各のセルのwの合計は同じにするのですか? もし枠幅が別の場合、上記では長さが合わないですよね? 表の中に表を作成するときに参考にしたいと思っています。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
難しく考えているのではないでしょうか?私は、表のheightは指定しません。widthも文字を入れると指定します。で、自動的に折り返す?かなのチェックをはずします。画像のほうは指定しなくても縦のセルは強制的に一番大きい画像の大きさになると思います。そこにwidthの指定をしていれば、ガタガタになるかもしれませんね。センター揃えにしていればいいと思いますよ。 横幅をそろえたいのなら、貼り付ける前にウェブアートデザイナーで加工して横幅を揃えたらいいと思いますよ。 おかしくなると、表を作り直して移動させると結構うまくいきますよ。 1×○の表を作りwidthをすべて900ピクセルにして、その中に2×2の表を入れてみたらどうですか。下の表も下のセルに入れるとすっきりすると思いますよ。 どこでも配置では、難しいかもしれません。標準モードでのことです。
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
テーブルのセルには、 枠線、パディング、内容を表示する部分、パディング、枠線 と並んでいます。 <td width="200"> とした場合、 左側のcellpadding + セルの内容を表示する部分 + 右側のcellpadding が、200pxとなります。 <table width="200"> とした場合は、枠線も含めて幅が計算されます。 これはスタイルシートと異なる計算式で、 スタイルシートでtd{width:200px}とした場合はpaddingが含まれません。 (DOCTYPEをHTML4/XHTMLにしている場合。 DOCTYPEを書かずにDHTMLやNetscape HTMLなどに準拠させている場合(いわゆる互換モード)では、IEではpaddingを含め、それ以外のブラウザは全く不明です。) > 画像をファイルから(1)に貼り付けます。 画像のサイズ指定がどうなっているかわかりませんが、 <td width="200"><img width="200"></td> と書いた場合は、tdのpaddingの分だけ幅が広くなります。 これに対応するには、 <table cellpadding="0">を指定するか、 スタイルシートでtd{padding: 0;}を指定することで可能だと思います。 cellpaddingを 1 などにすると、セルのwidthもそれに合わせて調整する必要があります。 cellpadding、paddingともに、ブラウザ毎、さらにタグ毎に初期値は違いますから、 *{padding: 0}などと指定して、全てのブラウザで同じになるようにする人が多いと思います。 私は、画像が入ったら<table>禁止ではなく、「表だと思ったら<table>を使う」でいいと思います。
- ORUKA1951
- ベストアンサー率45% (5062/11036)
ホームページビルダーのようなオーサリングツールを使用するときは、テキストエディタで作成する人以上にHTMLの基本はしっかり理解しておく必要があります。仕様書にあるように 【引用】____________ここから 表自体あるいは所定の列が固定幅であった場合、cellspacing属性及びcellpadding属性は、割り当てられた分量よりも多くの空間を必要とする場合もあり得る。 ユーザエージェントは、衝突が起こる場合はこの両属性に対してwidth属性よりも優先権を与えてもよいが、必ずしもそうしなくてよい。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Tables in HTML documents (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/tables.html#h-11.3.3 )]より 内部の幅や罫線の太さが指定された表の幅より大きいときは内部の大きさを優先することが期待されています。 いくら指定しても内容によって伸縮することが期待されているということ そもそも、表を画像の配置に使用することは、 【引用】____________ここから 単に文書内容を整形する目的だけで表を用いるべきでない。 さらに、見た目のために表が用いられると、その表が大きなディスプレイのあるシステムで作られた場合、表を見るために水平スクロールを強いられることがある。 こうした問題を最小限に押さえるため、著者は文書の整形には表ではなくスタイルシートを用いるべきである。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Tables in HTML documents (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/tables.html#h-11.1 )]より これはビルダーのマニュアルにも書いてあるはず。 文章がきちんとマークアップされていれば、そのような配置はいとも簡単に設定できるはずのものです。(表なんて使わなくても) その部分のマークアップと表示したいデザインを添付画像で示されたほうが早いような気がします。