職場でWebSiteを修正したり、新しいページ作成したりの作業がよくあって、ボタンとか、シンボルがあるところ全部 画像でそのまま貼ったって、レイアウトが変更がある時は画像なので、やりつらいなあと思ってときある。
CSSで何かできないかなあと、いろいろやってみて、CSSの楽しいトリックを学びことができました。
三角
三角の形、簡単そうですけど、CSSのオブジェクトだと基本は四角ですね。マルにするには簡単ですけど、三角はどうしたらいいだろう…。
と一杯考えたあと、このやりかた見つかった。
普通の四角で、ボーダーの値を幅の半分して、各面のボーダーの色を、違う色にすると
こんな感じの四角になります。
三角が四つあるように見えましたね!
それから!
いらない面の色を透明の色にしたら!
お!三角に見えました!
1つのHTMLエレメントで複数オブジェクトがあるシンボル(before:after:)
色んなサイトで矢印のようなオブジェクトをCSSで作成しているサイトがよく見えます。
:before :after と言うCSSのイベントを使ったら作れるらしい。
最初は:before :after の意味?コンセプト?どういうものなのかあまり理解できなくて、使わないように避けてたんですが、何とか色んな :before :after を使っているサイトをみて、やっと理解できました。
意味を検索してみると 、
”「HTMLには書かれていない要素もどきをCSSで作ることができる」”
と書いてあるけど、ま、私の理解している意味で説明しよ
たとえ一つの HTMLエレメントがあって、
beforeは このエレメントのちょっと過去
afterはこのエレメントのちょっと将来
past > now > future 同時に1つのエレメント3つの時代表示できる!
すご~いじゃん!タイムマシンがあるみたい
これで簡単なシンボルができる
さっそく 超簡単な×ボタン作ってみた。
1つのHTMLエレメントで同じ形のオブジェクトを複数で作成
さっきのbefore after で一つのHTML DOMで最大3つのオブジェクトのシンボルしかできないでしょうね。
もっとふくすうがあるシンボルをすくりたいならどうすればいいだろ…
っておもったら、面白い方法がみつかった!
box-shadowを使うと、忍者みたいに無限数の同じオブジェクトをDuplicateできる!
もうちょっと影の詳細をいじってみたら、色や、サイズもそれそれ違うものできるんだ!
まとめ?
最後に、↑に紹介したCSSのトリックで、 ピカチュウをつくってみた…
HTML:
CSS:
これくらいのコードで、ピカチュウができました! じゃ~ん!!
簡単なシンボル、レイアウトをCSSで作ると、WEB-PAGEでは画像の数が少なくなり、データ使用量もつくなくなるので、ロード時間も短くなるですね。
でも、複雑さがあるイメージなら、CSSで頑張ってどんなシンボルでも作成できると思いますけど、コード量も多くなって、壊れやすいし、管理し辛くなります。
適切に使いましょう!
でも練習として色んなものを作ってみたら、CSSは楽しいな!って思うようになるかも!