私たちの会社のサイトをより応答性の高いものに変換することに取り組んでいるので、試行錯誤の代わりにcss
を使用するように作り直しています。em
px
私が直面している問題は、この問題の継承でfont-size
あり、この問題のベストプラクティスを探しています。
これが私が今のところ問題を解決している方法です。
HTML
<h3>Heading with a <a href="#">Link</a></h3>
<p>this is a paragraph with a <a href="#">Link</a> inside of it</p>
<a href="#">this is a link outside the paragraph</a>
CSS
body {font:normal 100% sans-serif;}
p {font:normal 1.5em sans-serif; margin-bottom:.5em;}
h3 {font:bold 3em serif; margin-bottom:.5em; }
a:link {font-size:1.5em;}
p a, li a, h1 a, h2 a, h3 a, h4 a, h5 a,
h6 a, dl a, blockquote a, dt a, dd a, td a {
font-size:1em !important;
}
em
'は親に関連していることを理解していfont-size
ます。ですから、私が設定p{font-size:1.5em;}
し、また設定a:link{font-size:1.5em;}
し、私<a>
の外にいる<p>
場合、それらは同じ相対的なサイズになります。
しかし、<a>
内部に配置する<p>
と、埋め込みのフォントサイズは、より<a>
も1.5em
大きくなるため、大きくなり<p>
ます。これを克服するために、最後のスタイルを。の文字列で設定しましたp a, li a, h1 a,......{font-size:1em !important;}
。使用しなければならなかった(のファンではない)a:link
よりも特異性が高いので、サポートしなければならないので使用できません、あえて言います(まだ15%のトラフィックがあり、私たちはバイオテクノロジーであり、一部の企業は拒否します改良する)。p a
!important
!important
font-size:inherit;
ie6
だからあなたへの私の質問はこれです。タイポグラフィが壊れないように、タグ内のタグに取り組む際にこれを正しい方法で行っていますか?私が自分で考えた最後のスタイルを書くとすぐに、これは維持するのが悪夢になる可能性があります!使用したいrem
のですが、一部のユーザーにはブラウザサポートがありません。
自分のCSSでこの問題をどのように解決し、これに対する「ベストプラクティス」アプローチは何でしょうか。