1つの位置に固定されたdiv
を作成し、半透明にします-背後のコンテンツを部分的に表示し、ぼかします。私が探しているスタイルは、 Appleウェブサイト の「すべて表示」サムネイルのdiv
に似ています。
できることは、adjust opacity: 0.9
しかし、div
の下にあるコンテンツをぼかすことはできません。
注:div
の位置は固定されており、背景がスクロールします。渦巻く背景は、テキストと写真の混合です。
CSS 3にはぼかしフィルターがあります( 現時点では2014年11月のWebkitのみ ):
-webkit-filter: blur(3px); /*chrome (Android), safari (ios), opera*/
IE 4-9は非標準フィルターをサポートします
filter:progid:DXImageTransform.Microsoft.Blur(PixelRadius='3')
ぼかしやその他のフィルターについては、こちらのニースのデモをご覧ください
将来の参照用に CSSフィルターの互換性テーブルはこちら です。 Firefoxはv35 +で機能を取得しているようですが、IE11でも互換性はないようです。
別の方法はsvgを使用することです( 基本的にIE9以上で安全 ):
filter: url(blur.svg#blur);
SVG:
<svg version="1.1" xmlns="http://www.w3.org/2000/svg">
<filter id="blur">
<feGaussianBlur stdDeviation="3" />
</filter>
</svg>
JavaScriptで最高のブラウザー互換性を実現しますが、通常はパフォーマンスが最も遅くなり、jsが複雑になります。
CSS画像フィルターを使用できます。
-webkit-filter: blur(2px);
filter : blur(2px);
CSS画像フィルターの詳細:
しかし実際には、事前処理されたJPGを使用しており、正しい位置にオーバーレイとして使用しています。
#background {
position: absolute;
left: 10px;
top: 10px;
width: 600px;
height: 600px;
background-image: url(http://images.Apple.com/home/images/osx_hero.jpg);
background-position: 0 0;
}
#blur {
position: absolute;
left: 50px;
top: 50px;
width: 120px;
height: 500px;
background-image: url(http://images.Apple.com/home/images/osx_hero_blur.jpg);
background-position: -50px -50px;
}
<div id="background">
<div id="blur"></div>
</div>
あなたは私に試してみたいと思わせたので、ここで例をチェックしてみました:
http://codepen.io/Edo_B/pen/cLbrt
を使用して:
それでおしまい。
また、canvasを使用して現在のdomをコピーしてぼかしをかけると、任意の画面でこれを動的に実行できると考えています。
同じ画像(またはその一部)を不透明度.9で数ピクセル左/右/上/下に置くだけ-ほら
これはbackdrop-filter
と呼ばれるCSSフィルターとして今後登場するブラウザーになります。現在のところ、それに対するサポートはほとんどありません。ブラウザのサポートについては、以下を参照してください: http://caniuse.com/#feat=css-backdrop-filter
このCSSフィルターは、おもしろいビジネスやハッキングなしで曇りガラスを処理します。ただやるだけです。
誰かがそれのデモをVineで録音しましたが、本当に見栄えがいいです。彼らは毎晩Safariを使用してCSSフィルターにアクセスしていました。 https://Vine.co/v/OxmjlxdxKxl