ブログ投稿に C、c++、JAVA、および HTML コードを掲載したいのですが、blockquote、code、およびその他のタグを持つ Web サイトを多数見つけました。どちらを使用する必要がありますか (Google がどちらを好むか)。新しい HTML タグが利用可能かどうか教えてください。ありがとう
2 に答える
とがpre
ありcode
ます。それがstackoverflowが行うことです。
<pre><code>
Your code here
</code></pre>
おまけとして、StackOverflow はGoogle Code Prettifyを使用して構文の強調表示を追加します。
「どちらの Google が好きか」という質問に対する答えは、Google 検索は、コードに使用するマークアップをおそらく無視するということです。少なくとも、Google からの反対の声明、または何らかの影響の経験的証拠があります。
HTML の初期の頃から、code
マークアップはコンピューター コードを意味するものとして定義されてきました (やや漠然としていますが、通常は、少なくともプログラミング言語とマークアップ言語をカバーすると解釈されます)。このための新しいマークアップはありません。しかし、W3C HTML5 草案では次のように述べられています。そのためには、「language-」で始まるクラスを要素に追加します。」だからあなたは書くことができます
<code class="language-C">i++</code>
しかし、これは単に提案された規則であり、関連するソフトウェアによって特別なものとして認識されていない可能性があります。それはスタイリングに関する単なるアイデアです。
いくつかの例外を除いて、マークアップを使用することによる唯一の実際の影響はcode
、既定でフォントがモノスペースになる (そしてフォント サイズが約 90% に縮小される) ことです。
要素は整形済みのpre
テキストを示すため、基本的に表示用でありwhite-space: pre
、CSS で を使用して置き換えることができます。実際には、デフォルトでモノスペース フォントも意味します (そしてフォント サイズが縮小されます)。
このblockquote
要素は、理論的には、外部ソースからの引用を意味します。そのため、コンピューター コードや人間の言語とはまったく直交しています。実際には、すべての辺にデフォルトのマージンを設定する以外に影響はほとんどありません。
言及された要素のいずれも、HTML ドキュメント内の HTML マークアップを解釈するための規則を変更しません。a<b
したがって、 or<p>
またはa&b
;を直接書くことはできません。<
HTML ルールで&
エスケープする必要があります。
広い意味で、Google はここで説明するマークアップを完全に無視しているわけではありません。Google Translatorは、コンテンツを本質的に翻訳不可能なものとして扱いcode
ます (つまり、キーワードや識別子を翻訳する代わりに、コンテンツをそのまま保持します)。これは、ほとんどの場合 (適切なコードに対しては有効であり、コメントに対してはあまり有効ではありません)。奇妙なことに、明らかな理由もなく、同じように扱わpre
れているようです。blockquote