
No.1ベストアンサー
- 回答日時:
>この記述は文法上正しいでしょうか?
何か誤解されているようですね。
文法と言うのは、HTMLもCSSでも同じです。機械的なもので、例えばHTMLですと、P要素はブロック要素でこれこれの要素内にしか存在し得なくて、内部にinline要素しか入れられないなどですし、CSSの場合はcontentプロパティは、擬似要素と組み合わせて内容を持つ要素に内容を追加する。・・などいうものです。よって文法的には誤りではありません。
一方、HTMLには文法以上に、HTMLは文書構造を示すように要素--タグ--を選択し、要素が足りなければidやclass名で文書構造を補完するというなどの基本があります。
例えば<table>はブロック要素でその内部に最低ひとつの<tbody>と、ゼロ個以上の<caption><thead><tfoote>を持てば、文法上は整合しますが!!!!、それをデザインのために使ってはならないというようなものです。
さて、<strong>あいうえお</strong>とは、この単語、ないし部分が重要!!というマークアップですから、文法上は整合していますが、『「あいうえお」の写真』と言うような場合、これが<strong>というマークアップで意味的によいかどうかは、私には分かりません。
strongでマークアップされていれば、検索エンジンなどの機械や誰が見ても、この部分は、この文書にとって「重要」な要素--部品--だと判断するでしょうが、それが正しいか否かは著者以外には判断できません。
普通はstrongというタイプセレクタに対しては行わないでしょう。なぜなら、他の本当の意味で重要で<strong>要素すべてにマッチしてしまいますから・・
ご回答ありがとうございます。
自分でも調べてみると、擬似要素で挿入された文章はソースに表示されないようです。これだと不親切なので、記号などの挿入にとどめたほうがいいのかもしれません。
ありがとうございました。
No.2
- 回答日時:
>擬似要素で挿入された文章はソースに表示されないようです。
これだと不親切なので、記号などの挿入にとどめたほうがいいのかもしれません。いえ、逆です。ソースにはわざわざ入れたくないが、ユーザーエージェントによっては別の内容を加えたいときなどに使用するものです。
視覚系ブラウザについては"!"の画像を入れる。スクリーンリーダーには、前後に余韻を入れる。プリンターには太字でアンダーラインを入れるなど・・
例えば、
@media screen{
div.section p strong{
text-decoration:none;
color:red;font-weight:bold;
position:relative;
}
div.section p strong:after{
content:"!";color:red;
position:absolute;
top:-1em;right:-0.5em;
}
}
@media aural{
div.section p strong{
pause-before:1s;
pause-after:1s;
volume:loud;
}
}
@media print{
div.section p strong{
font-weight:bold;
text-decoration:underline;
color:inherit;
}
}
とか、本来HTMLソースにあったほうが良い物はソースに書きますが、ないほうがよい物は書かない。例えばSTRONG要素の前後に「」なんてないほうが良いのは明白です。スクリーンリーダーや印刷、あるいは検索エンジンには、無いほうがよいですよね。
・スクリーンリーダーが、"かっこ開く ここは重要 カッコ閉じる"なんて読んだら困ります。
・検索エンジンが、「ここは重要です」ではマッチしません。
HTMLには文書構造しか書かない。装飾的なもの--特にユーザーエージェントごとに違う---は、HTMLには書かないのが望ましいのです。言い換えると、ユーザーエージェントに依存してその要素の内容に何かを追加したいときには使いましょう。
[例]
<div class="nav">
<ol>
<li><a href="/Top">トップ</a></li>
<li><a href="/Products">製品</a></li>
に対して、印刷用スタイルシートでは、
div.nav ol li a:after{
content:"\A ( http://hoge.com"attr(href)")";
white-space:pre;
color:inherit;
}
とかはよく使うのじゃないでしょうか??
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS ワードプレスで太字が反映されません PC(MacBook)の画面上には、太字は反映されるのに、スマホ 3 2022/12/18 18:56
- 英語 theについて教えて下さい。 1 2022/04/12 14:00
- 英語 "after that"と"before"の使い分けやニュアンスの違いについて 3 2022/12/22 10:45
- 英語 Theの使うタイミングについて。 Theをつけるべき時とつけなくていい時の違いが曖昧です。 話し手と 3 2022/09/23 22:21
- PHP PHP一覧表示した項目にリンクをはりたい 1 2023/07/12 17:08
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
- 英語 提示表現の構造について 2 2022/12/01 10:40
- 英語 数量+前置詞/接続詞の解釈について 3 2023/01/10 11:20
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- PHP SQLとPHPの連結方法がわからないのでアドバイスお願い致します 1 2022/07/12 12:16
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
改行ほどは行かないけど、若干...
-
含む含まないという概念自体の...
-
NからZへの全単射を具体的に構...
-
smallにtext-allignが効かない
-
ナマズのスコアについて
-
「諸要素」とはどういう意味で...
-
1から100までの自然数のうち、2...
-
高2の数学です。わかるとこだけ...
-
DTDや文字コードの解釈が間違っ...
-
メールアドレス(グループ)の...
-
僻む人
-
自然数と偶数の自然数は全単射...
-
DOCTYPE宣言、XML宣言について
-
CSSのa:hoverが急に一部だけ効...
-
既婚男女の方、結婚前と結婚後...
-
floatを指定したdiv内のimg要素...
-
H1タグを画像にしたい
-
オシャレ要素が、あまりないか...
-
角丸画像の背景色を透明にした...
-
emとstrongの反対
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
既婚男女の方、結婚前と結婚後...
-
含む含まないという概念自体の...
-
テキストボックスの中にリンク...
-
質問1.
-
改行ほどは行かないけど、若干...
-
NからZへの全単射を具体的に構...
-
input type="hidden"で取得した...
-
smallにtext-allignが効かない
-
aの中にspan
-
HTML の繰返し法???
-
下線と文字の間を調整するには...
-
角丸画像の背景色を透明にした...
-
html タグの閉じスラッシュ前の...
-
CSS:overflow要素の印刷について
-
HTMLページ上でiframeを最前面...
-
CSSで改行後の行間調整
-
tdに対してmin-heightの定義、...
-
H1タグを画像にしたい
-
スタイルシートで文字色を指定...
-
textareaの幅を画面と合わせたい
おすすめ情報