重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

HTMLにて
数値を指示する場合 「" "」で囲む場合とそうでない場合を見かけますが
どちらが正しいのでしょうか?
例えば、セルの高さを指定する場合
<td height=50 と <td heght="50”
どちらでも 同じ結果になっていますが・・・

多言語だと " "は文字を表す意味になり
なんかピンとこないので 自分は ” ” なしで表記します
worrdのHTMLで書出しでは " " なしになっています

A 回答 (4件)

ダブルクオートを習慣にしていれば、後々問題が起きません。


シングルクオート内に、文字としてのシングルクオートを使いたい場合に厄介だからです。

ダブルクオートなら、文字としてのダブルクオートを使う場合は"を続けて2個書けば良いだけです。

引用符内に文字として"をつかうので有れば
="""" で済みます。

これは、エクセル・ワードとも共通です。
    • good
    • 0
この回答へのお礼

なるほど ありがとうございます

お礼日時:2021/03/28 17:54

HTML5 から条件付きで OK になりました。


属性値が以下の文字を含まない場合は省略できます。

空白スペース、<、>、'、"、`、=

でも
>  <td heght="50”
というような、属性で数値を直に書く書き方は HTML4 で既に非推奨。
太古の遺物です。使わないようにしましょう。

私は引用符を付ける派です。
    • good
    • 0
この回答へのお礼

なんかいろいろありすぎて混乱しますね・・(苦笑

慣れるしないのですかねぇ・・・

参考になります ありがとうございます

お礼日時:2021/03/31 19:38

何が「正しい」かということを知るには、仕様書を読みましょう。



https://momdo.github.io/html/syntax.html#attribu …
によると

属性値には「数値」というものはありません。
全て「テキスト(文字列)」です。
その指定方法は4つ(うち一つは空属性なので、実質3つ)です。

height=50 を例にすると

・条件にある文字だけで構成されているので「引用符で囲まれない属性値構文」で「height=50 」と表記できる。
・APOSTROPHE文字を含まないので「単一引用符属性値構文」で「height='50' 」と表記できる。
・QUOTATION MARK文字を含まないので「二重引用符属性値の構文」で「height="50" 」と表記できる。

と、いずれも「正しい」表現となります。


それをふまえて。
どの表現を採用するのが正しいか、は、いろんな条件で変わります。

>他言語だと " "は文字を表す意味になり
>なんかピンとこないので 自分は ” ” なしで表記します

ということで全然構わないと思います。


一方で、引用符は省略するべきではない、という考えもあります。
・将来、引用符無しでは表現できない文字を指定する可能性もあるから、最初から付けておこう
・データの再利用を考えて、 〜="〜" で抜き出せるようにしておこう
などなど

仕事の場合だと、チームの規則とか客の要望とかも関わってきます。
    • good
    • 0
この回答へのお礼

なるほど
詳しい解説ありがとうございます

他のプログラム言語と場合に比べ、
HTMLは 何でもアリ テキトーでもとりあえず
表示している いろんな似たような表現がある
という為に 悩んでしまいます
いわゆるエラー動作になるのであれば
それはダメだとわかるのですが・・・

悩ましいです

お礼日時:2021/03/30 21:45

HTMLのルールでは、引用符が正しい



Wordなんて(というよりもマイクロソフトは)、HTMLのルールを無視していますからね(笑)
まあ、ブラウザ側が、
臨機応変に妥協してレンダリング(表示)してくれているのです。

--------------
そして、
> <td heght="50”
の例だと、CSSを利用した方が良いです。 というか、heightですよ・・・
<td style="height:50px;">
一箇所だけならstyle属性でも良いですが、
td{ height:50px;}
この一文を書くだけで、全てを正統できます。
<table>
<tr><td>1</td><td>2</td></tr>
<tr><td>3</td><td>4</td></tr>
<tr><td>5</td><td>6</td></tr>
</table>
このように、HTML側が簡潔になりますよ。
    • good
    • 0
この回答へのお礼

CSSをあえて使わない理由があるので
タグ内の記載に拘ります(style は別)

また、
>この一文を書くだけで、全てを正統できます。
については すべてを同じにはしていない為
結局は タグ内や span で指定する必要があるので・・

質問以上の回答は求めていません

>というか、heightですよ・・・

タイプミスです 
左隣の記載を見て下さい

お礼日時:2021/03/28 22:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!