こんにちわ。今日はクリスマスイブということで、クリスマスぽい背景をつくって見ました。
See the Pen wobJpy by kazuya utsunomiya (@kazuya_utsunomiya) on CodePen.
まず雪の結晶をCODEPENで描いていきます。こういう幾何学的ぽい図形は、ツールを使えばコピーしながら少しづつ反転、回転させていけばいいので割と楽なのですが、点を一つづつ数値入力するとなると地獄です。左右対称にするだけで、前の線の点から計算しながらひいていくわけで、すっかり心折れて諦めました。
割とシンプルそうなSVG専用の図形ツールであるBoxySVGをインストールして結晶を描きました。
ツールから保存したSVGファイルをテキストエディタで開き、background-imageにdata:image/svg+xml,の後に続けて流し込みます。改行があるとエラーになるので削除、またダブルクォートはCSSで使っているのでシングルクォートに変換しました。
|
background-image:url("data:image/svg+xml,<svg viewBox='0 0 300 300' xmlns='http://www.w3.org/2000/svg'><path d='M 80.41 66.991 L 85.669 63.641 L 90.941 66.991 L 90.941 72.408 L 85.984 75.368 L 80.643 72.483 L 80.41 66.991 Z' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 219.547 266.713' style='fill: none; stroke: black;'/><g transform='matrix(1, 0, 0, 1, -122.723381, -204.176941)'><path d='M 208.399 267.438 L 208.399 227.137' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 202.494 232.018 L 208.214 236.404 L 214.507 232.209' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 196.773 239.645 L 208.214 247.463 L 220.99 239.645' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/></g><path d='M 190.481 243.84' style='fill: none; stroke: black;'/><g transform='matrix(-1.000001, 0, 0, -1.000001, 294.753723, 342.839111)'><path d='M 208.953 268.177 L 208.399 227.137' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 202.494 232.018 L 208.214 236.404 L 214.507 232.209' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 196.773 239.645 L 208.214 247.463 L 220.99 239.645' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/></g><g transform='matrix(1, 0, 0, 1, -122.723381, -204.176941)'><g transform='matrix(-0.440226, -0.897887, 0.897887, -0.440226, 54.850155, 581.916077)'><path d='M 208.836 267.791 L 208.399 227.137' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 202.494 232.018 L 208.214 236.404 L 214.507 232.209' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 196.773 239.645 L 208.214 247.463 L 220.99 239.645' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/></g><g transform='matrix(0.440226, 0.897888, -0.897888, 0.440226, 362.224518, -33.741871)'><path d='M 208.303 267.341 L 208.399 227.137' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 202.494 232.018 L 208.214 236.404 L 214.507 232.209' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 196.773 239.645 L 208.214 247.463 L 220.99 239.645' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/></g><g transform='matrix(0.469852, -0.882745, 0.882745, 0.469852, -131.356094, 329.900116)'><path d='M 209.119 267.702 L 208.399 227.137' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 202.494 232.018 L 208.214 236.404 L 214.507 232.209' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 196.773 239.645 L 208.214 247.463 L 220.99 239.645' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/></g><g transform='matrix(-0.469853, 0.882746, -0.882746, -0.469853, 547.67218, 218.390656)'><path d='M 208.582 267.413 L 208.399 227.137' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 202.494 232.018 L 208.214 236.404 L 214.507 232.209' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/><path d='M 196.773 239.645 L 208.214 247.463 L 220.99 239.645' style='fill: none; stroke: white; stroke-width: 4; stroke-linecap: round;'/></g></g></svg>"); |
スクロールする雪の背景を2つ重ねて、奥ゆきをだすようにしました。
3〜4個の雪をばらした画像にしておけば縦横整列しているように見えなくて良いのですが、結晶を描くのに時間をかけすぎたので少しの手間を惜しみたい気分です。なんとなくそういうデザインだと思い込ませる作戦にします。
CSS3の背景グラデーションで画面に赤と緑の領域を作ります。
|
html{ height:100%; background-size:100% 100%; background-image: linear-gradient(50deg, red 40%, transparent 40%), linear-gradient(120deg, white, gray 50%, DarkGreen 50%) ; } |
文字はgoogle fontからフォントを選んできました。
といったところで今日はおしまい。