通常、グラデーションを作成するときは、colorzilla グラデーション edtiorを使用します。
デフォルトでは、CSS が生成されます。次に例を示します。
background: #1e5799; /* Old browsers */
background: -moz-linear-gradient(top, #1e5799 0%, #2989d8 50%, #207cca 51%, #7db9e8 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1e5799), color-stop(50%,#2989d8), color-stop(51%,#207cca), color-stop(100%,#7db9e8)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #1e5799 0%,#2989d8 50%,#207cca 51%,#7db9e8 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #1e5799 0%,#2989d8 50%,#207cca 51%,#7db9e8 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #1e5799 0%,#2989d8 50%,#207cca 51%,#7db9e8 100%); /* IE10+ */
background: linear-gradient(to bottom, #1e5799 0%,#2989d8 50%,#207cca 51%,#7db9e8 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#7db9e8',GradientType=0 ); /* IE6-9 */
これは確かに完全ですが、必要かどうか知りたいです。試行錯誤と削除のプロセスを通じて、次の CSS に縮小しました。
background: #1e5799; /* Old browsers */
background: linear-gradient(to bottom, #1e5799 0%,#2989d8 50%,#207cca 51%,#7db9e8 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#7db9e8',GradientType=0 ); /* IE6-9 */
この縮小された CSS は、Chrome、Firefox、IE8、IE9、および IE10 で引き続き機能するようです。ただし、Internet Explorer 互換ビューの使用が常にうまく機能するとは限らないため、言うのは難しいです (IE9 を使用していたときはブロックが機能していましたが、IE10 にアップグレードして IE9 互換ビューを使用した後は機能しませんでした)。IETesterもダウンロードしましたが、このツールを使用することでより多くの成功を収めています。
特定のケースやその他の重要なブラウザーで壊れる可能性のある重要な CSS が欠けているかどうか、またはこれをさらにスリム化できるかどうかを誰かが確認できるかどうかに興味がありました。
重要性はそれほど重要ではありませんが、サイズにかなりの違いがあります。
2 つのブロックの違いは618 bytes
と で、10 のグラデーションを使用するシートでは、違いは以上6 KB
です。ご覧のとおり、これは急速に増加する可能性があり (キャッシングと今日のインターネット速度を考慮すると、これは最も重要な要素ではありません)、それでも検討する価値があると思います.