38

HTML5でも、<br>タグを?で閉じるのは適切<br />ですか?

これは明らかに他のすべての単一タグにも当てはまります。これは実際の動作には影響しないことはわかっていますが、ここでのベストプラクティスは何ですか?

someLines of txt <br>            // How you see a lot of people doing it
and then some <br />             // XHTML style! Should I still be doing this? 
ow im not done yet.. <br> </br>  // No one does this right? RIGHT?!
4

5 に答える 5

43

HTMLのW3C仕様から:

  • 以下は、HTMLのvoid要素の完全なリストです。

    • area、、、、、、、、、、、、、、、、、、、base_ br_ col_ command_ embed_ hr_ img_ input_ keygen_ link_ meta_ param_ source_ track_wbr
  • ボイド要素には開始タグのみがあります。void要素には終了タグを指定しないでください。

  • 開始タグは、正確に次の順序で、次の部分で構成されます。

    • <キャラクター。
    • 要素のタグ名。
    • オプションで、1つ以上の属性。各属性の前に1つ以上のスペース文字を付ける必要があります。
    • オプションで、1つ以上のスペース文字。
    • オプションで、/要素がvoid要素である場合にのみ存在する可能性のある文字。
    • >キャラクター。

このことから、またはのいずれかを使用できるよう<br>です<br/>。ただし、終了タグ</br>は無効であるため、を使用しないでください<br> </br>

HTML検証サービスを介して以下を実行すると、同じことが示されます。

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Testing void elements</title>
</head>
<body>
    some lines of txt <br>
    and then some more <br />
    I'm not done yet... <br> </br> <!-- This line generates an error -->
</body>
</html>

したがって、またはのいずれ<br><br/>を使用してください。一貫して使用するようにしてください。

編集:Brad<br />が指摘したように、有効なXHTMLでもあるため、おそらくこの形式を選択するのが最善です。

于 2012-05-15T10:40:42.373 に答える
5

IMHO @Alexが指摘しているように、いわゆるvoid要素を閉じても、XHTML標準に準拠するのが最善だと思います。コードが有効なXMLでもある場合は、コードを管理するためのより優れたツールサポートが見つかる可能性があります

<br>  // not valid XML without a closing tag

<br /> // valid XML and I prefer this

<br></br>  // valid XML but unnecessary clutter

いずれにせよ、 HTML検証サービスを介してコードを実行する必要がある場合。それが有効である限り、あなたはコーディングスタイルのみを扱っており、その誰もがこの問題について独自の傾斜を持っています。

[編集]

私の答えを明確にするために、これらのXHTMLヘッダーのいずれかを使用することをお勧めします...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

HTML5をコーディングしている場合、クライアント/ブラウザは厳格な標準をサポートする必要があります

于 2012-05-15T10:27:05.400 に答える
3

一貫性を保つことがより重要です。<!DOCTYPE html>一部の人が言うように、無効または自己終了するthenタグを使用すると、パーサーによって処理されます。

1つのアプローチを決定し、それに固執します。xhtmlスタイルの構文を使用することにしましたが、実際にはxhtmlを使用していません。パーサーはあなたのマークアップを理解できる必要がある他の人々より寛大ですが、あなたが標準を持っていて、誰もがこれに賛成するなら、誰もが同じ賛美歌シートから歌っています。

なぜコンベンションが必要なのですか?以下のすべてが有効であるため:

<META CHARSET=UTF-8>        
<META CHARSET=UTF-8 />      
<META CHARSET="UTF-8">      
<META CHARSET="UTF-8" />        
<meta charset=utf-8>        
<meta charset=utf-8 />      
<meta charset="utf-8">      
<meta charset="utf-8" />        
<MeTa CHARset=utF-8>

もう1つ考えるべきことは、html5属性です。一連の属性の最後にブールスタイルの属性を使用し、他の属性を常に引用符で囲むことにしました。例:

<video id=“vid1” data-someting="my_val" controls>

このようにして、冗長な構文を使用する必要はありません(私の意見では):

<video id=“vid1” controls="controls">

html5では、終了タグを省略できるからといって、</p>タグであっても、正しくはなりません。

私はあなたがあなた自身の正気のためにxhtml'sytle'構文を使うことに決めることを願っています!

于 2012-05-15T10:33:33.703 に答える
1

これ/は、html 5では無効な要素に対して有効で無視されbrます。そのうちの1つは、完全にあなた次第ですが、個人的には、そのレガシーなものとしての習慣から抜け出します。(その無効な要素という事実は、あなたが言うように、<br> </br>無意味であることを意味します)

于 2012-05-15T10:24:32.893 に答える
0

リンクされた記事から自己閉鎖タグについて学んだ後、私は<br><br/>または<br />すべてがHTML5で有効であることを知りました。

しかし、あなたが書く<br/><br />、それからそれらは最終的に<br>ブラウザによってHTML5に変換されます。

また、あなたがそれらを書いた場合、ブラウザはエラーを生成しませんが、2つのタグ<br></br>としてそれを読み取ります。<br>

someLines of txt <br>            // This is completly valid and recommended
and then some <br />             // XHTML style! should be written like this in XHTML but in HTML5 you can just write <br>
ow im not done yet.. <br> </br>  // Even if you do this then no error will generate. Instead browser will read it as 2 <br> tags

方法は次のとおりです。

<p>This is paragraph with &lt;br&gt;<br> and &lt;br/&gt;<br/> and then &lt;br /&gt;<br />.</p>
<p>closing br is wrong way <br></br> but browser read it as 2 br.</p>

ブラウザでの表示:

ここに画像の説明を入力してください

于 2021-07-19T02:57:08.060 に答える