Tableコーディングをしていますが、うまくwidthの設定ができません。
以下ソースコードのテーブル部分になります。(html4で組んでます。)
<table cellspacing="0" cellpadding="0" width="780">
<tr><td colspan="3"><img src="Banner_big.jpg" width="780" height="200"><td></tr>
<tr><td width="387"><img src="Banner_small.jpg" width="387" height="200"><td><td width="6"></td><td width="387"><img src="Banner_small.jpg" width="387" height="200"><td></tr>
</table>
したい事としては、780px内に正確に小さい画像を2つ入込みたいのですが、画像が添付画像のようにずれてしまい<td width="6"></td>が大きくしまっているようです。
<td width="6"></td>を取れば、うまく画像は並ぶのですが、勉強を含め理解したいという目的もあります。
解決方法や、論理的な説明、大変申し訳ございませんがどなたかお願いできないでしょうか?
よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
>Yahooストアにバナーを貼る為に、tableを組んでいました。
それを先に言ってくれなきゃ・・(^^)
なら、単純にHTMLの書き間違い。
<table cellspacing="0" cellpadding="0" width="780">
<tr>
<td colspan="3">
<img src="Banner_big.jpg" width="780" height="200">
<td>
</tr>
<tr>
<td width="387">
<img src="Banner_small.jpg" width="387" height="200">
<td>
<td width="6"></td>
<td width="387">
<img src="Banner_small.jpg" width="387" height="200">
<td>
</tr>
</table>
だとブラウザは
<table cellspacing="0" cellpadding="0" width="780">
<tr>
<td colspan="3">
<img src="Banner_big.jpg" width="780" height="200">
<table>
<tr>
<td>
<td><!-- 補完 -->
</tr>
<tr>
<td width="387">
<img src="Banner_small.jpg" width="387" height="200">
<table><!-- 補完 -->
<tr><!-- 補完 -->
<td width="6"></td>
<td width="387">
<img src="Banner_small.jpg" width="387" height="200">
<table><!-- 補完 -->
<tr><!-- 補完 -->
<td>
</td><!-- 補完 -->
</tr>
</table>
No.2
- 回答日時:
>解決方法や、論理的な説明、
ということで・・
いや、ご存知だと思いますが、「(html4で組んでます。)」・・16年以上前、1999年にHTML4.01が勧告された最大の理由、目的は「構造とプレゼンテーションの分離( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」でしたね。
すなわち、
・テキストを画像に置き換えて表現する。
・ ページレイアウトの目的で表を用いる。
は強く非推奨になりましたし。
( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )
また、
「単に文書内容を整形する目的だけで表を用いるべきでない。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」
ざっと見る限り、バナーを2種類(?)を並べたいだけですよね。わざわざ分けているところを見ると、リンクが張ってあるのじゃないかと。
HTMLの設計で最も重要なことは、構造とプレゼンテーションの分離です。
HTMLには文書構造しか書きませんから、
想像ですが、ナビゲーションリストじゃないかと・・
「DIV要素とSPAN要素は、id属性及び class属性と併用することで、文書に構造を付加する( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」
に従ってHTMLは、
<div class="nav">
<ul><!-- 順不同リスト -->
<li><a href=""></a>
<ul>
<li><a href=""></a></li>
<li><a href=""></a></li>
</ul>
</li>
または、画像が、アルバムのように重要なコンテンツである場合は
<div class="nav">
<ul>
<li><a href=""><img src="Banner_big.jpg" width="780" height="200"></a>
<ul>
<li><a href=""><img src="Banner_small.jpg" width="387" height="200"></a></li>
<li><a href=""><img src="Banner_small.jpg" width="387" height="200"></a></li>
</ul>
</li>
</ul>
</div>
だけでよいですよ。
これなら、点字端末やスクリーンリーダー、テキストブラウザのように画像が利用できないユーザーは無論、検索エンジン対策(SEO)も完璧。
「HTMLは、どんな環境からもWebの情報を利用できるようにすべきだという方針の下に開発されている。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」
★HTML特にHTML4.01以降で最も守らなければならないポイントです。
下の例をもとに具体的なサンプル書いてみますが、これで、PCやスマホ、あるいは携帯電話やスクリーンリーダー、検索エンジンに対応できる。
先で自在にデザインも変えられるし、メンテナンスも容易・・
★タブは_に置換してあるので戻してください。
★Another HTML Lint - Gateway( http://www.htmllint.net/html-lint/htmllint.html# )
の[DATA]で検証済みのHTML4.01strict+CSS2.1です。
★幅の広い画面は無論、ウィンドウが小さい端末でも追随する。
★スマホ縦画面だとデザインが変わる。(PCでも・・)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
_<meta http-equiv="content-type" content="text/html; charset=Shift_JIS">
_<title>サンプル</title>
_<meta name="author" content="ORUKA1951">
_<meta http-equiv="Content-Style-Type" content="text/css">
_<meta name="viewport" content="width=device-width; initial-scale=1.0">
_<link rev="made" href="mailto:oruka1951@hoge.com" title="send a mail" >
_<link rel="START" href="../index.html">
_<style type="text/css" media="screen, projection">
<!--
html,body{margin:0;padding:0;}
h1,h2,h3,h4,h5,h6{margin:0;line-height:1.6em;}
p{text-indent:1em;}
div.header,div.section,div.footer{width:90%;min-width:480px;max-width:1000px;margin:0 auto;padding:5px;}
div.header div.nav{
_margin:0 auto;
_padding:0;
_width:80%;
}
div.header div.nav ul{font-size:0;}
div.header div.nav ul,
div.header div.nav ul li{
_list-style:none;
_margin:0;padding:0;
_position:relative;
}
div.header div.nav ul li a img{
width:100%;
height:auto;
}
@media (min-width: 480px) {
div.header div.nav ul li ul li{
_width:49%;
}
div.header div.nav ul li ul li+li{
_position:absolute;
_top:0;
_right:0;
}
}
-->
_</style>
</head>
<body>
_<div class="header">
__<h1>タイトル</h1>
__<div class="nav">
___<ul>
____<li><a href="/books"><img src="Banner_big.jpg" width="780" height="200" alt="著書"></a>
_____<ul>
______<li><a href="/books/1.html"><img src="Banner_small.jpg" width="387" height="200" alt="本A"></a></li>
______<li><a href="/books/2.html"><img src="Banner_small.jpg" width="387" height="200" alt="本B"></a></li>
_____</ul>
____</li>
___</ul>
__</div>
_</div>
_<div class="section">
__<h2>見出し</h2>
__<p>本文はsection</p>
__<div class="section">
___<h3>項見出し</h3>
___<p>本文項記事</p>
___<p>sectionの階層でレベルが判断される</p>
__</div>
_</div>
_<div class="footer">
__<h2>文書情報</h2>
__<dl class="documentHistry">
___<dt id="FIRST-PUBLISHED">First Published</dt>
___<dd>2013-03-03</dd>
__</dl>
_</div>
</body>
</html>
丁重な回答ありがとうございます。
Yahooストアにバナーを貼る為に、tableを組んでいました。
CSSを別組にする事が出来ない状態で、自分にはハードルが高いかなと思っています。
ご教授いただいた内容は理解できるのですが、yahooストアに反映しようと思ったらどうすれば良いか・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- HTML・CSS テーブルタグのセルの幅の一部だけを指定 1 2023/03/12 12:02
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- Visual Basic(VBA) Selenium.ChromeDriverの使い方について 7 2022/09/22 06:43
- HTML・CSS 自身のHPにYouTube動画を貼り付けるのが出来なくなり困ってます 1 2022/11/11 10:44
- HTML・CSS 【CSS】:hasで可能? imgを含むtr要素を選択したい 1 2022/11/17 14:36
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- PHP 共通の処理をまとめる方法がわからないのでアドバイスお願いします。 1 2022/12/19 20:20
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
html でのテキスト結合について
-
商品詳細を横並びに表示する方法
-
tableタグとformタグの組み合わせ
-
テーブルの枠線に色が付かない
-
divで囲んだ文字が消える
-
Tableタグで作成した表の縮小
-
td width="180" と固定してるの...
-
td要素内のdiv要素をセンタリン...
-
<img>タグにCSSのclass設定可能?
-
太字にするやり方
-
Firefoxを使ってるのですがズー...
-
商品一覧をtableタグで表示する
-
table タグで3列の表を作ると...
-
style=displayでの表示/非表示...
-
formのinputなどの幅100%指定
-
<TD div id="new">←こういうの...
-
テーブルの一部分のセルだけに...
-
リンクをクリック出来ない。
-
Tableタグ内のspan styleが適応...
-
ブラウザ上でのタブ・シフトタ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
html でのテキスト結合について
-
tableタグとformタグの組み合わせ
-
テーブルの一部分のセルだけに...
-
同じクラス名はつけないほうが...
-
テーブル内のテーブルの高さを...
-
XHTMLに関する質問 順序が逆に...
-
Tableタグ内のspan styleが適応...
-
Tableタグで作成した表の縮小
-
ブラウザによってテーブルのセ...
-
cssで、テーブルのtdの中の文字...
-
td要素内のdiv要素をセンタリン...
-
vbscriptで時計を作りたい
-
formのinputなどの幅100%指定
-
Firefoxを使ってるのですがズー...
-
テーブルの枠線に色が付かない
-
divで囲んだ文字が消える
-
TDタグ内での均等割付の仕方
-
表とリスト(ulとtable)の違い...
-
firefoxで「height: 100%;」と...
-
<img>タグにCSSのclass設定可能?
おすすめ情報