<BR />を使用するのは時々悪いですか?


157

<BR/>タグを使用するのは時々悪いですか?

私の開発チームが私に与えた最初のアドバイスのいくつかはこれだったので私は尋ねます:使用しないでください<BR/>。代わりに、スタイルを使用してください。しかし、なぜ?<BR/>タグを使用するときにマイナスの結果はありますか?


10
最良の答えを見つける最善の方法は、開発チームに行き、なぜ彼らに尋ねるのですか?
azamsharp 2009年

47
チームメンバーではなくStackOverflowから回答を得ようとするのは、突然のことですが、間違っているのでしょうか。
Nosredna 2009年

7
いいえ、それは誰かが彼に主観的な答えを与えただけであり、彼はその背後にある理由を推測するように私たちに求めています...主観的な答えを与えた人に、特に彼らが近くにいる場合(同じ開発チーム内)
Gabrielに

8
通常、「最初のアドバイス」は、従業員が新しいときに来ます。新入社員はいつも「なぜ?」と質問する気分ではありません。明らかに、理由を尋ねるのが最善の場合もありますが、Burak Ozdoganはこれらの質問を読んだ後、おそらく「なぜ」を理解していると思います。あるいは、少なくとも、HTMLコミュニティがこのテーマについて何を話し合うのに十分なほどよく理解しているか。私は彼が尋ねるためにここに来て正しい動きをしたと思います。
Nosredna 2009年

5
私はあなたの助言を理解し、あなたの種類は正しいです。しかし、重要なのは、新しいチームに入るときであり、非常に多くの入力が短時間で得られます。そして、それらのいくつかはちょうど言及されています。括弧内の詳細のように。私はここに2つの理由でそれを尋ねたかった:答えを得るために、それにどのようにアプローチするかについての異なる意見を見るため。みんなありがとう!
pencilCake 2009年

回答:


172

使用しない主な理由<br>は、セマンティックではないことです。異なるビジュアルブロックに2つのアイテムが必要な場合は、おそらくそれらを異なる論理ブロックに配置する必要があります。

ほとんどの場合、これは、たとえば<p>Stuff</p><p>Other stuff</p>、異なる要素を使用し、CSSを使用してブロックを適切に配置することを意味します。

<br>意味的に有効な場合、つまり、改行が送信するデータの一部である場合があります。これは実際には、詩とメールアドレスの2つの使用例に限定されています。


38
個人的には<pre/>詩に使うのが好きです。このようにして、インデントの可能性を含め、元の構成を維持することを意図として明示的に指定します。
のMichałGórny

6
MichałGórny@良い点を提起する- <br>sがどこにのみ適切であるように思われるすべての次の条件のが適用されます:1。改行は、意味的に意味のある、2インデントがない意味的に意味のある(そうでない場合は、あなたが使用する必要があり<pre>、3。他の意味論的に適切では存在しませんタグ、段落や見出しタグのようなメーリングリストのアドレスは、これらの条件の3つのすべてを満たし、かつその歌の歌詞を行う詩がもっともらしく条件「インデントは意味がありません」、およびので、より良いに配置される場合があります違反する可能性があります。。 <pre>
マーク・アメリー

2
次のような<br />メールのサインオフでの 使用についてはどう<footer>Sincerely,<br />StrexCorp</footer> ですか?
JHS、2016

109

あなたの開発チームは<br />マージン間隔の代わりに参照していると思います。要素間にスペースを空けるには、CSSを介してパディング/マージンのスタイリングを使用します。

の不適切な使用<br />

<div>
   Content
</div>
<br />
<br />
<br />
<br />
<div>
     More content...
</div>

の有効利用<br />

<style>
     div {
          margin-top:10px;
     }
</style>

<div>
   Content<br />
   Line break
</div>

<div>
     More content...
</div>

4
<br>を削除してCSSを追加することはできません。これは、<br>を削除した場合スタイルを設定するものがないためです。空白を(文字どおりに)記入せずに「改行を削除する」と言うのは信じられないほど役に立ちません
Gareth

7
あなたは正しい、iamkoa、しかしこれは理由を説明していません。したがって、それは質問に答えません。24票は少し多いようです。
オービットの軽量レース、

@iamkoa 理由を説明していません。
Fabian Picone

よりクリーンでシンプルなので、2番目のオプションの方が良いと思います
。brを

26

一般に、<br/>セマンティックHTMLが不十分であることを示しています。最も一般的なケースは<br/>、段落区切りを宣言するためにを使用することです。これには、意味的に行うためのより良い方法があります。Bed and BReakfastを参照してください。

それが適切なタグである場合がありますが、意味論的思考を強制するために人々が「使用しない」という考え方を採用するほど頻繁に悪用されます。


13

あなたのチームが意味していたことは、おそらく<br>を使用して段落を分割しないことでした。

<p>I am a paragraph</p>
<p>I am a second paragraph</p>

CSSを使用して段落間のスペースを簡単に調整できるので、これを行うにはより良い方法です。それ以外には改行を改めて言うことは思いつきません。


9

レイアウトにテーブルを使用しない理由にも同じ概念が適用されます。テーブルにはテーブルを使用し、レイアウトにはCSSを使用します。

<br/>レイアウトに影響を与えたい場合は、テキストブロックとCSSの改行に使用します。


4

レイアウトを直接指定すると、さまざまなページサイズやフォントなどにサイトを適合させることが難しくなります。


2

私は通常、常にCSSを使用して要素に適切なマージンとパディングを設定します- <br />意味的に正確であるという点を除けば、場所全体にsをロードするよりもずっと面倒です。

<br />厳密に言えば技術的に正しくなくても、CSSによって設定されたマージンとパディングを優先して使用するのは、わずかに多くのスペースが必要な孤立したインシデントであった場合でしょう。非常に大きなスタイルシートがあり、その1つの出来事のためだけに追加のスタイルを設定する価値がないと思われる場合<br />、1回限りのスタイルシートを使用できます。

ほとんどのものと同様に、<br />sは正しく使用されていれば問題ありません。


1

CSSを無効にして簡単に読み取れるようにマークアップを記述しようとしています。BRを使用してスペースを追加するだけの場合は、マージンとパディングを使用することをお勧めします。


1

<br />改行にのみ使用し、ページにスタイルを適用しないでください。たとえば、段落間にスペースを追加する必要がある場合は、クラスを指定して、段落に追加のパディングを適用します。段落を広げないでください<br /><br ><br />


1

改行を表すために使用されます。これ以上何もない。平均的なジオシティサイトのようにスペースを埋めないでください。ただし、フロートをクリアするという、改行を入れる以外の目的で役立つ場合は1つしかありません。

<br style="clear: both;">

1
使用されていますが、このメソッドは有効なXHTMLではありません。
iamkoa 2009年

2
多くの場合overflow:auto、代わりに包含要素を使用することで、この「ハック」を回避できます。
mpen 2009年

2
@iamkoa:XHTMLは使用しません。HTMLはHTMLではなく、XMLです。
BalusC 2009年

1

使用しないでください3以上の連続<br>使用すると、文体の目的のためにそれらを使用している信号だと、いや、あなたはいけないこと、秒。

<br>2つではなく1つで十分だと言う人もいますが<p></p>、通常は段落のように、トピックの変更や新しいピリオドの開始を暗示することなく、長いポーズを導入したい状況(例:スクリーンプレイ)があります。


0

適切に使用すれば問題ありません。たとえば、<p>タグの代わりに使用したり、要素間にスペースを作成したりしないでください。2つ続けて使用している場合は、おそらく何か問題があります。


0

これを行う場合: <BR/> <BR/>

異なるブラウザーで異なるレイアウトを取得します。

より深く:改行だけに
使用する場合<BR/>-わかりました。ラインスペーサーとして
使用する場合<BR/>-大丈夫ではありません。


0

以下は、<br>スタイリングに悪影響を与える例です(ビジュアルの実行スニペット)

(ボタンの位置がずれており、右側に奇妙なスペースがあることに注意してください):

button {
  width: 70px;
  height: 70px;
}
#arrows {
  border: solid thin red;
  display: inline-block;
}
#arrows span:first-of-type { 
  text-align: center; 
  display: block;
}
#moveUp {
  margin: 0;
}
/* In the current case instead of <br> use display */
/*
#arrows span:last-of-type { 
  display: block;
}
*/
<div id="arrows">
  <span>
    <button id="moveUp" value="üles">&uarr;</button> 
  </span>
  <button id="moveLeft" value="vasakule">&larr;</button> 
  <button id="moveDown" value="alla">&darr;</button> 
  <button id="moveRight" value="paremale">&rarr;</button> 
  <br>    <!-- note the shifted button and odd space on right -->
  <span>or move with keyboard arrows</span>
</div>


-2

HTML(HTML 4まで)での使用<br>
:HTML 5での 使用<br>が推奨されます<br/><br />許容されます
XHTMLで: <br />が推奨されます。<br/>またはを使用することもできます<br></br>

したがって、<br>タグの使用は完全に有効なHTMLです。しかし、の使用<br>は推奨されませんか?

使用しない主な理由は、<br>セマンティックタグではなく、内部にコンテンツがないためです。その使用は次のように回避できます:

<p>some<br>text<p>

<br>as なしでマークアップできます

 <p>some</p>
 <p>text<p>

<br>CSS marginプロパティを介して達成できるトップスペースなどの他の目的を使用している場合。


1
<p>を使用すると、上下に最大16pxのマージンが追加されることに注意してください。各<p>タグのマージンを0pxに設定して、必要以上の高さを使用して行の間隔を空けないようにします。
Satbir Kira、2015
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.