CSSによるリアルな水滴の効果
2022-01-17 15:31:05
CSSは本当に楽しいです、ははは、とにかく大好きです、自由に書いて遊んでいます。私は絵を描くのが得意ではない、次の動的な効果の水滴の模倣を完了するためにCSS3アニメーションは、主に影の効果だけでなく、@keyframesキーフレームといくつかのセレクタ技術を設定するには、CSSを使用します、それを学ぶために来てください!私はそれを学ぶことができます。
/
{{br
効果:とてもいい感じです
また、以下のURLからアクセスすることもできます。
水滴がクリックで
インスピレーション。私は芸術のバーに属している、この絵の影のハイライトを見た、ハハ、私は小さな新人です。
GitHubの素晴らしいオープンソースの強力なアンコールを紹介します。 ファンシーボーダーラジアスジェネレータ これを使えば、この効果を2倍簡単に実現できるので、コーディングを始めることができます
1.html
簡単、1ボックスでOK
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>waterdrop</title>
</head>
<body>
<div class="shui"></div>
</body>
</html>
2.CSSについて
コメントはすでにコードに書かれているので、ここでは擬似要素セレクタの使い方、影を設定するbox-shadowプロパティ、キーフレーム@keyframesとキーフレーム・アニメーションの使い方、border-radiusについて学びます。30% 70% 70% 30% / 30% 35% 65% 70%; プロパティ
/*clear the effect of body * *{
margin: 0;
padding: 0;
}
/* Set the background color * body{
background-color: rgba(40, 134, 241, 0.925);
}
/* initialize water, size, bend, shadow * .shui{
width: 400px;
height: 400px;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
/* border for testing * /* border: 1px solid; * box-sizing: border-box;
/* set bend * border-radius: 30% 70% 70% 30% / 30% 35% 65% 70%;
/* set box-shadow :horizontal-shadow vertical-shadow blur-distance shadow-size shadow-color inner/outer-shadow (inset/outset(default))
Box-shadow can have multiple values, separated by commas
Horizontal and vertical shadows must be written, the other 4 are optional* box-shadow: inset 10px 20px 30px rgba(0, 0, 0, 0, 0.5), 10px 10px 20px rgba(0, 0, 0, 0, 0.3), 15px 15px 30px rgba(0, 0, 0, 0, 0.05),
inset -10px -10px 15px rgba(255, 255, 254, 0.83);
/* use keyframe watermove 9s to play evenly infinite loop* animation: watermove 9s linear infinite;
}
/* Pseudo element selector: insert after ^ * .shui::after{
content: "";
position: absolute;
width: 35px;
height: 35px;
background: rgba(255, 255, 255, 0.82);
border-radius: 50%;
left: 60px;
top: 80px;
/* use keyframe watermove 4s play evenly infinite loop* animation: watermove 4s linear infinite;
}
/* Pseudo-element selector: insert something at the top of the current box * .shui::before{
content: "";
position: absolute;
width: 20px;
height: 20px;
background: rgba(255, 255, 255, 0.82);
border-radius: 50%;
left: 120px;
top: 55px;
/* use keyframe watermove 4s play evenly infinite loop* animation: watermove 4s linear infinite;
}
/* keyframes * @keyframes watermove{
20%{
border-radius: 30% 70% 53% 47% / 28% 44% 56% 72%;
}
40%{
border-radius: 30% 70% 39% 61% / 34% 39% 61% 66%;
}
60%{
border-radius: 25% 75% 45% 55% / 40% 55% 45% 60%;
}
80%{
border-radius: 28% 72% 31% 69% / 32% 39% 61% 68%;
}
}
3. フルコード
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>waterdrop</title>
<style>
/*clear the effect of body* *{
margin: 0;
padding: 0;
}
/* Set the background color * body{
background-color: rgba(40, 134, 241, 0.925);
}
/* initialize water, size, bend, shadow * .shui{
width: 400px;
height: 400px;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
/* border for testing * /* border: 1px solid; * box-sizing: border-box;
/* set bend * border-radius: 30% 70% 70% 30% / 30% 35% 65% 70%;
/* set box-shadow :horizontal-shadow vertical-shadow blur-distance shadow-size shadow-color inner/outer-shadow (inset/outset(default))
Box-shadow can have multiple values, separated by commas
Horizontal and vertical shadows must be written, the other 4 are optional* box-shadow: inset 10px 20px 30px rgba(0, 0, 0, 0, 0.5), 10px 10px 20px rgba(0, 0, 0, 0, 0.3), 15px 15px 30px rgba(0, 0, 0, 0, 0.05),
inset -10px -10px 15px rgba(255, 255, 254, 0.83);
/* use keyframe watermove 9s to play evenly infinite loop* animation: watermove 9s linear infinite;
}
/* Pseudo element selector: insert after ^ * .shui::after{
content: "";
position: absolute;
width: 35px;
height: 35px;
background: rgba(255, 255, 255, 0.82);
border-radius: 50%;
left: 60px;
top: 80px;
/* use keyframe watermove 4s play evenly infinite loop
関連
-
html plus css style to achieve js food project home page サンプルコード
-
CSSの数学関数によるアニメーション効果
-
HTMLの絶対パスと相対パスの概念を詳しく解説
-
CSS開発における20のクイックTIPSを解説
-
CSSの失敗術を解説
-
CSS非制御位置固定の説明
-
HTML5でよく使われる5つのローカルストレージの詳細な解説と紹介
-
CSSの完璧な垂直中央配置を実現する11の方法
-
[解決済み】Uncaught TypeError。プロパティ 'onclick' を null に設定できない [重複]。
-
画像のBase64エンコードを詳細に弄るCSS
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン