jord8on
(Jordan)
2020 年 3 月 4 日午後 5:38
1
この投稿についての追加質問があります:Create background gradient overlay on page, making the discussion area white
フォーラムの下部にスクロールすると、モバイル端末では背景が「おすすめのトピック」と競合していることがわかります。
ページの下部(Y 軸方向)に向かって不透明度を高めつつ、上部は現状のままにすることは可能でしょうか?現在のコードは以下の通りです。
body {
background: radial-gradient(circle at center, rgba(255,255,255,1) 50%, rgba(255,255,255,0)) fixed, url(https://forums.pickleballist.com/uploads/default/original/1X/e7792afe9a5b7fbd26141c3c21e82b70cd495069.svg) center top / 300px auto ;
background-attachment: fixed;
}
このコードがコミュニティに適用する背景画像は以下の通りです:
デスクトップでは背景が「おすすめのトピック」と競合するほどではありませんが、モバイル端末では少し重く感じられます。
繰り返しになりますが、Y 軸の下部でより不透明にしたいだけです。コードに何か調整は可能でしょうか?
jord8on
(Jordan)
2020 年 3 月 4 日午後 6:03
2
少しのハックを見つけましたが、最良の解決策ではないかもしれません。しかし、私が探していたことは確実に実現できるので、ここに記録しておきます。もしこれが良い解決策でなければ、誰かがコメントしてくれることを願っています!
画面下部にある「推奨トピック」エリアのデフォルト CSS は以下の通りです。
.suggested-topics {
clear: left;
padding: 20px 0 15px 0;
}
そのため、カスタム CSS に以下を追加しました("clear: left"は変更していません)…
.suggested-topics {
padding: 20px;
background: rgba(255, 255, 255, 0.6);
}
これはかなりうまくいきました!
以下は、モバイル環境での前後の比較です。
ああ、そうでした。background-attachment: fixed は iOS では機能しないことを忘れていましたね… iOS はスクロール時に画面全体が再描画されてパフォーマンスが悪化するため、これを無効にしています。
回避策はいくつかあります…
例となる CSS
body.mobile-view {
background: none;
}
body.mobile-view:after {
content:"";
position:fixed;
left:0;
top:0;
right:0;
bottom:0;
z-index:-1;
display:block;
background: radial-gradient(circle at center, rgba(255,255,255,1) 50%, rgba(255,255,255,0)) fixed, url(https://forums.pickleballist.com/uploads/default/original/1X/e7792afe9a5b7fbd26141c3c21e82b70cd495069.svg) center top / 300px auto;
background-size:cover;
}
…ただし、この機能を有効にしている間も、依然としてパフォーマンスの問題に直面する可能性があります。そのため、この方法に満足できない場合は、モバイル向けに背景のアプローチを全く変更することを検討してみてください。
jord8on
(Jordan)
2020 年 3 月 4 日午後 7:01
4
素晴らしい!ありがとうございます @awesomerobot !いつもあなたの驚異的なデザインスキルに感謝しています!