-
ID:1dHLun さんの質問

質問させてください。

layerA, layerBがあり、Aにはbackground-imageがかかっており、Bにはbackground-colorでAに重なるようにwhiteが指定されているパララックスのページがあるとします。

この状態の時、Bの1部分だけを50x50pxくらいの正方形に切り抜き、切り抜かれた正方形の背景にAの画像が常に見えている状態にしたいのですが、コード的にキレイな書き方が思いつかなくて悩んでいます。

Bの背景として、事前に正方形が切り抜かれた画像を、background-imageで指定する方法はすぐに思いつくのですが、できればもっとキレイな書き方をしたいです。なにかいい方法があればアドバイスいただきたいです。よろしくお願いいたします。

みんなの回答 4 件

ID:6wD7AM さんの回答

レイヤーCを作ってabsoluteであわせて、そのレイヤーのbackgroundをtransparentにするというのはどう?

ID:1dHLun

すみません、ちょっと理解できていないので質問させていただきたいのですが、layerの重なり順として、A -> B -> C という認識で合っていますか?
50x50pxのtransparentが適応されたCを重ねると透過されますが、透過されるのはBの白背景まででAの画像背景は見えないと思ったのですがどこかで認識が間違っていますか?

ID:iROtqk さんの回答

質問させてくださいって、誰もお前に質問しろと頼んでないが。

ID:/LfWtM

狂気を感じる

ID:e2ACEH

これぞW3Qer

ID:7fdo..

「狂気」みたいなカッコイイ表現の似合わない、単に不機嫌なオッサンでしょ。最近仕事が無くてカネ無くて女に逃げられたのかしら?哀れ~

ID:.3cQHR さんの回答

bの白い部分はボーダーで表現
または
bの上に正方形のcを作り、aと同じ背景画像

ID:1dHLun

なるほど。。確かにご指摘いただいた方法だとスマートに実現できそうです。後者の表現の仕方も確かに有効ですが、将来的に背景が動画に差し代わる可能性があるので前者の方でトライしてみます。ありがとうございます

ID:4jlAUX さんの回答

残念ながら現在のCSSで「切り抜き」は表現できない。上の回答のように b に超極太の border を設定して擬似的に表現するのが一番スマートかも。

ID:1dHLun

回答ありがとうございます。切り抜きを表現できないのは分かっていたのですが、上の方が回答くださったような擬似的な方法でならスマートに表現できそうです。

最終更新日:2015-08-27 (1,679 views)

関連するトピックス

ページ上部に戻る