9月更新・前月(8月)の人気記事トップ10 09/02/2024
- ( 01 – ) 【Labs】position:absoluteとwidth:100%を指定すると横幅の設定がうまくいかない場合の対処方法について
- ( 07 ↑) 【Mac】macOSをHigh SierraからMontereyにアップグレード
- ( 03 – ) 【Mac】横画面で撮影した動画をYouTubeショート用にMacのiMovieで縦画面に編集する方法
- ( 10 ↑) 【iPhone / iPad】iPhoneのツイッターアプリでユーザー名をコピーする方法
- (圏外↑) 【Labs】CSSだけでドロップダウンメニュー
- ( 02 ↓) 【jQuery】入門2. jQueryをHTMLに組み込む
- ( 09 ↑) 【Mac】Safariでソースコードを見る方法
- ( 04 ↓) 【jQuery】入門7. jQueryで新しいWindowを開く
- ( 06 ↓) 【2024年5月】iPad画面解像度まとめ
- (圏外↑) 【GIMP】レイヤーをロック
【Labs】@importについて
こんにちは(・∀・)
今日は@importについてです。
@importで外部CSSを読み込むのはパフォーマンスの低下に繋がるという検証結果を最近世間で見かける様になっておりましたので、当サイトでも切り替えようと考えてはいたのですが中々移行する事が出来ずにおりました。
@importの問題
ところが最近WordPress化計画が着々と進行中の当サイトである問題が!
IETesterでサンプルの動作確認をしようとした所、IE6、IE7、IE8でCSSの一部が読み込まれない事態が発生!色々と調べて行く内に原因は@importで外部CSSを読み込む事とIEの条件分岐にあることが判明。
IEの条件分岐でhtml5shivが読み込まれなくなっておりHTML5で作ってあると認識されなくなっておりました。
CSSをモジュール化して運用するのは便利だったのですが、IE6、IE7はともかく、WindowsXPで使用されるIE8で読み込まれないのはちょっと問題があるので急遽当サイトでも対応する事に。
@importをやめて<head>
内にlinkでCSSを直接読み込むように変更して、さらにIEの条件分岐も変更。
IEの条件分岐は、今まで、
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
だったのを、
<!--[if IE]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
に変更。
結果、IE6ではいまだおかしな表示ですが(IE6はもういいよね!)、IE7とIE8でCSSがちゃんと読み込まれるようになりました(IE7もいらないけどね!)。
WordPressとHTML5でCSSの表示がおかしい場合、@importと条件分岐に問題があるかもしれません。参考までに。
参考
CSS @import を使用しない Google PageSpeed Insights
[css] @importを使うべきでない理由
[CSS]外部スタイルシートの指定は@importとlinkでどちらがいいか