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

【HTML】なぜ改行してはいけないのか?

(例:※全角大文字で表記しています)<IMG SRC=”HOGEHOGE.JPG” ALT=”ほげほげ”>
という1文があったとします。この場合、<と>の間は改行(¥N)しないものというのが通例のようですが、「なぜ、改行していはいけない」のか、規約規定など根拠を示して紹介しているページを探してください。

よろしくお願いいたします。

●質問者: naleringar
●カテゴリ:ウェブ制作
✍キーワード:いもの ほげほげ 大文字 規約 ALT
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● van-dine
●30ポイント

http://www.asahi-net.or.jp/~wq6k-yn/kaigyo.html

上のリンク先にも書いてあるように、タグ内で空白を入れられるところ("?"内を除く)なら改行してもOKです。

<a href="http://q.hatena.ne.jp" title="人力検索はてな">人力検索はてな</a>
<
 a
 href="http://q.hatena.ne.jp"
 title="人力検索はてな"
>
人力検索はてな
<
 /a
>

どちらの書き方も認められます。

<a href="http://q.hatena.
ne.jp" title="人力検索はてな">人力検索はてな</a>
<a href="http://q.hatena.ne.jp" tit
le="人力検索はてな">人力検索はてな</a>

こんな書き方は認められません。

ただ、古いブラウザの中には、

人力検索
はてな<br>
<img src="photo1.jpg">
<img src="photo2.jpg">

と書くと、「人力検索」と「はてな」の間や

2つの画像の中にスペースが入ってしまうバグがあるものが存在します。

対策として、一行で書くか、下のものは規則を応用して

<img src="photo1.jpg"
><img src="photo2.jpg">

という書き方ができるのですが、今のブラウザだけを対象にするなら気にしない方がいいでしょう。

画面におさまりやすく、構造がわかりやすく、読みやすいコードを心がけましょう。

読みにくいコードは更新の意欲をそぐ原因になりかねません。

一例をあげます。

<table>
 <tr>
 <th>
 お店
 </th>
 <th>
 電話番号
 </th>
 </tr>
 <tr>
 <td>
 ピザ屋
 </td>
 <td>
 3333-xxxx
 </td>
 </tr>
 <tr>
 <td>
 おそば屋
 </td>
 <td>
 5555-xxxx
 </td>
 </tr>
</table>

2 ● makoohira
●29ポイント

すみません、参照リンクは、先ほどのよりこちらのが参考になると思います。

http://www.atmarkit.co.jp/fxml/rensai/xmlwomanabou10/learning-xm...

追記なので、こちらはポイントは不要です。


3 ● makoohira
●1ポイント

あえて理屈を付けるなら、「htmlはxmlをベースにした言語なので、できるだけxmlの記述法に従ったほうが美しい」

という考えからだと思われます。xmlでは、タグの中で改行を挟むと、読み取れなくなります。

しかし、htmlの場合は、

<img
 src="...やったら長いファイル名..."
 alt="...やったら長い代替テキスト..."
 title="...やったら長い内容解説..."
 onclick="...javascriptの処理..."
 onmouseover="...javascriptの処理..."
 onmouseout="...javascriptの処理..."
 width=""
 height=""
/>

などと書いても、読みやすい、美しいと思えば、それでいいのです。

xmlについてはこちら

http://ja.wikipedia.org/wiki/Extensible_Markup_Language


4 ● ふるるP
●30ポイント

「htmlはxmlをベースにした」というのは誤解を招く書き方ですね。歴史的にhtmlのほうが古いのですから。


タグとは、ブラウザに対する命令と思ってもいいでしょう。命令ですので、ブラウザが理解できる書き方にしないといけません。

ブラウザがどのようにタグを理解するか、というのはw3cに基づきます。

http://www.asahi-net.or.jp/~SD5A-UCD/rec-html401j/cover.html

タグの中身が分かるように、単語の中で改行はしてはいけないし、リンク先アドレスなどひとつの意味に当たるようなものの中では改行はできません(したらブラウザが理解できず、へんな表示になるでしょう)。

◎質問者からの返答

まとめ返信にて失礼いたします。

回答者さんみなさんの内容、リンク先など頑張って読んでみて、

1・「(要素の切れ目で)改行してはいけない」という決まりはない(改行してもよい)

2・構造がわかりやすく、読みやすいコードを心がけるべき

3・ただし、ケースによって「読み取れない場合もある」

という理解をしました。

今回、「改行を含まないでほしい環境」で利用したいHTMLについて、改行入りソースを作成される方に根拠をお知らせできればと思ったのですが、「そういう環境だから入れないでね」にてお願いするしかないようですね。

みなさま、ありがとうございます。

関連質問


●質問をもっと探す●



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