速報

SageMaker SDKの既定バケットに所有者確認漏れ|成果物の改変を防ぐ更新と点検

CATEGORY

【CSS】波線の背景の作り方

※本ページのリンクにはプロモーションが含まれています。

【CSS】波線の背景の作り方

目次

本記事では、CSSで波線の背景の作り方をご紹介しています。

CSSで波線の背景を作りたいんだけど、良い方法ないかな?

上記の疑問にお答えします。

では、解説していきます。

スポンサーリンク

参考サイト

先日ネットサーフィン中に面白いジェネレーターサイトを発見しました。

面白いなーと思ったのは下記のサイトです。セクションの境目のデザインをジェネレータで作ることができるサイトになります。

https://wweb.dev/resources/css-separator-generator/

上記のサイトではいくつかデザインパターンが用意されていて、その中から気に入ったデザインを選んで設定を調整できるわけですが、その中にギザギザの模様をしたデザインパターンがあります。

これ、少し改良すれば波線も表現できそうな気がする!ということで本記事の内容を作るに至りました。

完成した波線の背景

色々と試行錯誤した結果完成した波線の背景がこちら。区切り線的な使い方のサンプルです。

See the Pen Background Wavy1|CSS by ryohei (@intotheprogram) on CodePen.

背景いっぱいに波線を展開。

See the Pen Background Wavy3|CSS by ryohei (@intotheprogram) on CodePen.

テキストに引くと下記のようになります。

See the Pen Background Wavy2|CSS by ryohei (@intotheprogram) on CodePen.

下線として引く場合は間違いなくtext-decoration: underline wavy;の方が使いやすいと思いますのが、間隔やサイズ等を調整したい場合は上記の方法でも良いかもしれません。

スポンサーリンク

波線の背景の作り方

作り方…といってもほとんどはジェネレータが作ってくれたものですが、下記が前項でご紹介したサンプルで使用しているHTMLとCSSです。CSSの.wavy::afterに定義しているスタイルが波線の部分になります。

HTML

<p class="wavy"></p>

CSS

.wavy {
    position: relative;
    /* テキストに引く場合は下記追加 */
    /* display: inline-block; */
}

.wavy::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 10;
    display: block;
    height: 5px;
    background-image:
        linear-gradient(135deg, transparent 25%, #ff0000 50%, transparent 75%),
        linear-gradient(-135deg, transparent 25%, #ff0000 50%, transparent 75%);
    background-size: 10px 5px;
    background-position: 0, 5px;
}

基本的に調整を入れるのは.wavy::afterに指定している下記のプロパティです。

  • height:波線の背景を表示する高さを指定
  • top: 背景いっぱいに展開する場合は0を指定
  • background-image:線の色変更とtransparentで波の太さを調整
  • backgrouns-size:波の幅と高さ調整
  • backgrouns-position:背景の位置調整
  • background-repeat:横のみの繰り返しはrepeat-xを指定

これらを調整して良い感じの波線を作ることができます。ただ、波線を表現しているのはlinear-gradientで、あくまで背景の上下を透明にしているだけなので、大きくするとぼやけて見えるのでその点はご注意ください!

最後に

波線は基本的にカンプから画像をスライスしたりCanvasやで使うことが多いですが、CSSでもそれっぽいのは表現できることがわかりました。ただ、実際に表示して輪郭の明瞭さを見てみると、画像やSVG等には遠く及ばないので、用途は限られそうです。テキストに波線を引いたり、区切りや単色の背景であれば使いやすいと思いますので、ご活用いただければ幸いです!

以上、CSSで波線の背景の作り方のご紹介でした!

この記事を書いた人

Ryohei

Webエンジニア / アプリ開発者 / 技術ブログ運営者

福岡のWeb制作会社に勤務するWebエンジニアです。10年以上にわたりWeb制作・開発に携わり、ヒアリングや進行管理から、コーディング、CMSの構築、システム開発、サーバーの構築・保守・運用まで、Webサイト制作の工程を幅広く担当しています。Webサイトは、これまでに100以上の構築・保守を手がけてきました。

個人でもWebサイトの制作・改修やWebアプリの開発・運用を行い、AIを活用した開発にも取り組んでいます。近年はWebセキュリティにも注力しています。

2015年から技術メディア「Into the Program」を運営し、実務や開発で得た知識をもとに、プログラミングの実装方法やWebサイトの運用・セキュリティ情報を発信しています。

主な分野
Webサイト構築・保守・運用 / HTML/CSS / JavaScript / PHP / WordPress / サーバー構築・保守・運用 / アプリ開発 / セキュリティ対策
資格・試験合格
情報セキュリティマネジメント試験
基本情報技術者試験
AWS認定ソリューションアーキテクト アソシエイト
PHP8技術者認定ウィザード
メディア運営
2015年〜

記事の作成・更新について

セキュリティ記事は、ベンダーの公式アドバイザリやCVE・JVNなどの一次情報を参照し、出典と情報確認日を記載します。実環境での検証を行った場合は、その環境と確認範囲を明示します。重要な追加情報や誤りを把握した場合は、内容を確認して追記・訂正します。

関連する記事

おすすめの書籍

キーワードから探す

スポンサーリンク

SVG

図形を数式(ベクター)で表す画像の形式。拡大しても荒れず、CSSやJavaScriptで色や動きを変えられる。

詳しく見る