これ(jQuery)を使用して、すべて<br>
の s をに置き換えて、<br />
検証エラーを解消しています。
$("<br>").replaceAll("<br />");
ただし、検証エラーは減少しません。バリデーターは元のソースをチェックしますか?
これ(jQuery)を使用して、すべて<br>
の s をに置き換えて、<br />
検証エラーを解消しています。
$("<br>").replaceAll("<br />");
ただし、検証エラーは減少しません。バリデーターは元のソースをチェックしますか?
JQuery は、ドキュメントがレンダリングされた後にのみ起動します。ページ読み込みのプロセスは次のようになります
<br>
すべてのタグでサイト全体の検索と置換を行い、それらを次のように置き換えることをお勧めします<br />
バリデータは JavaScript を実行しません。HTML を解析し、宣言された doctype のスキーマと比較します。
<br>
クライアント側ではなく、ソース ファイル/ビューでを置き換える必要があります。
これを行う理由はありません。XHTML は死んでいます。doctype を html 5 に切り替えて、閉じられていないタグを使用して幸せに戻ります。
<!DOCTYPE html>
HTML は DOM モデルに解析されます (Gary の投稿のステップ 3)。ここで、<br>
と<br />
は等しいと見なされます。JavaScript を使用して要素を HTML ページに追加すると、jQuery を使用するか他の手段を使用するかに関係なく、要素が解析されて DOM に追加されます。内部の HTML がどのように見えるかは、ブラウザーにとってもはや重要ではありません。
を使えば一目瞭然ですinnerHTML
。以下を任意の HTML ドキュメントに配置します (XHTML、HTML4、HTML 3.2 のいずれであっても問題ありません)。
<p onclick="alert(this.innerHTML);">BR: <br />self close</p>
<p onclick="alert(this.innerHTML);">BR: <br>open</p>
<p onclick="alert(this.innerHTML);">BR: <BR>open capitals</p>
ブラウザにロードしてクリックします。
IE では 3 つのバリアントすべてが として表示され"<BR>"
、FF、Chrome、Opera では 3 つのバリアントすべてが として表示され"<br>"
ます。これは、ブラウザーが HTML を内部的に表現する方法です。JavaScript で有効な HTML または無効な HTML を使用しても、これは変わりません。さらに悪いことに、ドキュメントが XHTML であっても、内部の HTML 表現は有効な XHTML ではありません!
まず、前述のように、バリデーターは html ファイルをチェックし、何も実行しません。さらに、html を有効にしたい場合は、もちろんそれ以上
のものがあります.. html エディタを使用しないのはなぜですか?