状態:-
閲覧数:5,827
投稿日:2012-02-08
更新日:2013-04-03
CSS3で背景色にグラデーションをつける時は、IE用に背景を個別指定
メニュー背景にグラデーションを適用しているはずなのに、IEだとうまく適用されないことがある。
保険の意味で(IEで背景グラデーションが表示されない場合のことも考慮して)、cssで固定色も設定しておけばよいかも、と思ったのでメモ
Googleが提供しているHTML5.jsは、CSS3グラデーションとは無関係
CSS3はブラウザ依存。ブラウザがCSS3プロパティに対応していればHTML側はHTML4でもHTML5でもXHTML1.0でも可
IE9は、CSS3グラデーションに対応していない
「IE9」… SVG拡張子ファイル作成し、CSSで普通に指定 background-image: url("/○○.svg");
「IE6/7/8」… PIE.htc利用
メニュー背景にグラデーションを適用しているはずなのに、IEだとうまく適用されないことがある。
保険の意味で(IEで背景グラデーションが表示されない場合のことも考慮して)、cssで固定色も設定しておけばよいかも、と思ったのでメモ
Googleが提供しているHTML5.jsは、CSS3グラデーションとは無関係
CSS3はブラウザ依存。ブラウザがCSS3プロパティに対応していればHTML側はHTML4でもHTML5でもXHTML1.0でも可
IE9は、CSS3グラデーションに対応していない
「IE9」… SVG拡張子ファイル作成し、CSSで普通に指定 background-image: url("/○○.svg");
「IE6/7/8」… PIE.htc利用
導入時メモ
IEでは背景グラデーションが効かない
以前もやってしまったが、今回もミスっていたのでメモ。
それは、「IEでは背景グラデーションが効かない」、ということ。
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
とか、
<!--[if IE]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
とかで、IEにも適用されるかと思ったけど、それは別の話。
HTML5.jsって何?
「HTML5」と「CSS3」の違い
違いが分からないので、調べる。
HTML4でCSS3は利用可能ですか?
調べるまでは、「CSS3」って、「HTML5」じゃなきゃ使えない、と思い込んでいたので、ちょっとショックだった。ブラウザ依存なのか…。
というわけで、本題に戻ると、
背景グラデーションを利用するには、CSS3利用が必須。
しかし、IE8まで(?)はCSS3非対応。
IE9は、CSS3一部対応。
そのため、IEにCSS3を対応させるためのハック情報がネットに溢れている。
ここで勘違いしたのが、IE8対応ハックを利用すれば、当然、IE9にも対応されるだろう、という自分勝手な(?)思い込み。
■CSS3 PIE(PIE.htc)
デザクロ技術メモ(HP・CSS・SEO): CSS3 PIE(PIE.htc)が上手く動作しない際の注意点|デザインクロス〔山形県鶴岡市=庄内のホームページ制作会社|通称デザクロ〕
全部試すもIE9で反映されず。後で気付いたが、「Internet Explorer(6・7・8)」とは書かれていても、IE9とは一言も書かれていない。当然いけるでしょ? とこちらで勝手に思い込んでしまった…。
このサイトを見て、ようやく気が付いたよ。IE9はまた別なのか……
[CSS3]今から出来るIE対策 「影とグラデーション編」 | CreaMo!-クリーモ!-クリエイティブをMotto!集めるブログ
■SVG拡張子ファイルを作成
【CSS3】IE9にCSS3のグラデーションを適用する | r-tgw.net:WEBの備忘録 – ブログ -
IE9用の背景グラデーション画像を自動生成する | r-tgw.net:WEBの備忘録 – ブログ -
半角スペースとかの関係でうまくいかなかったので、コピペは、下記SVGソースを利用
【レビュー】IE9でグラデーションを実現する方法 | エンタープライズ | マイナビニュース
出来た!
※うまくいかない時は、ブラウザで、.SVGファイルへ直接アクセスしてみればよいと思われ。うまくいっているときは、画像(?)が表示される
一応、SVGファイルについて調べる。
Scalable Vector Graphics - Wikipedia
ちなみに、作成したSVGファイルは、普通の画像閲覧ソフトでは、開けないみたい。
後は、グラデーション微調整を行い、終了。
出来たわ。
面倒くさいから、IEは固定色でいこうかと思ったけど、
いざ仕上げてみると、やっぱグラデーションはいいかも、と思ったので、これから利用することにしよう。
難しくはない。
ただただ、メンドクサイだけ。
だけど、一度出来てしまえば、次からは意外に簡単かもしれない……
HTML4でCSS3は利用可能ですか?
調べるまでは、「CSS3」って、「HTML5」じゃなきゃ使えない、と思い込んでいたので、ちょっとショックだった。ブラウザ依存なのか…。
というわけで、本題に戻ると、
背景グラデーションを利用するには、CSS3利用が必須。
しかし、IE8まで(?)はCSS3非対応。
IE9は、CSS3一部対応。
そのため、IEにCSS3を対応させるためのハック情報がネットに溢れている。
ここで勘違いしたのが、IE8対応ハックを利用すれば、当然、IE9にも対応されるだろう、という自分勝手な(?)思い込み。
■CSS3 PIE(PIE.htc)
デザクロ技術メモ(HP・CSS・SEO): CSS3 PIE(PIE.htc)が上手く動作しない際の注意点|デザインクロス〔山形県鶴岡市=庄内のホームページ制作会社|通称デザクロ〕
全部試すもIE9で反映されず。後で気付いたが、「Internet Explorer(6・7・8)」とは書かれていても、IE9とは一言も書かれていない。当然いけるでしょ? とこちらで勝手に思い込んでしまった…。
このサイトを見て、ようやく気が付いたよ。IE9はまた別なのか……
[CSS3]今から出来るIE対策 「影とグラデーション編」 | CreaMo!-クリーモ!-クリエイティブをMotto!集めるブログ
何故かIE9が出来ない!
私だけかもしれませんが、IE9だけグラデーションが効きません
私だけかもしれませんが、IE9だけグラデーションが効きません
■SVG拡張子ファイルを作成
【CSS3】IE9にCSS3のグラデーションを適用する | r-tgw.net:WEBの備忘録 – ブログ -
IE9用の背景グラデーション画像を自動生成する | r-tgw.net:WEBの備忘録 – ブログ -
半角スペースとかの関係でうまくいかなかったので、コピペは、下記SVGソースを利用
【レビュー】IE9でグラデーションを実現する方法 | エンタープライズ | マイナビニュース
出来た!
※うまくいかない時は、ブラウザで、.SVGファイルへ直接アクセスしてみればよいと思われ。うまくいっているときは、画像(?)が表示される
一応、SVGファイルについて調べる。
Scalable Vector Graphics - Wikipedia
ちなみに、作成したSVGファイルは、普通の画像閲覧ソフトでは、開けないみたい。
後は、グラデーション微調整を行い、終了。
出来たわ。
面倒くさいから、IEは固定色でいこうかと思ったけど、
いざ仕上げてみると、やっぱグラデーションはいいかも、と思ったので、これから利用することにしよう。
難しくはない。
ただただ、メンドクサイだけ。
だけど、一度出来てしまえば、次からは意外に簡単かもしれない……