2024.09.08

HTML・CSS

clip-pathプロパティを利用した高さ可変の三角形と矢印

clip-pathプロパティを利用して、高さを可変の三角形と矢印を作成します。
デモページはこちら

まず共通のCSSです。clip-pathはdivタグの疑似要素に指定します。注意点としてbackground-colorはdivの疑似要素側に指定します。親要素であるdivに指定するとうまくいきません。

.div-parent {
  position: relative;
  z-index: 1;
  margin: 0 0 1em;
  color: #fff;
}
.div-parent::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #1563ad;
}

三角形を作成する場合、clip-pathのpolygonは台形になるため、座標の指定は4つです。

.style01 {
  padding: 40px 40px 40px 70px;
}
.style01::after {
  clip-path: polygon(60px 0, 100% 0, 100% 100%, 0 100%);
}
.style02 {
  padding: 40px 70px 40px 40px;
}
.style02::after {
  clip-path: polygon(0 0, calc(100% - 60px) 0, 100% 100%, 0 100%);
}

矢印を作成する場合、clip-pathのpolygonは五角形になるため、座標の指定は5つです。

.style03 {
  padding: 40px 40px 40px 70px;
}
.style03::after {
  clip-path: polygon(60px 0, 100% 0, 100% 100%, 60px 100%, 0 50%);
}
.style04 {
  padding: 40px 70px 40px 40px;
}
.style04::after {
  clip-path: polygon(0 0, calc(100% - 60px) 0, 100% 50%, calc(100% - 60px) 100%, 0 100%);
}

関連記事

2021.02.02

HTML・CSS

flex-growプロパティを利用した横並びのリスト

flex-growプロパティを利用して、左右にボーダーのある横並びのリストを作ります。リスト内のテキストの文字数が異なる場合でも、簡単にレスポンシブ対応できます…

2020.10.03

HTML・CSS

WAI-ARIAのaria-current属性で現在位置を指定

デモページはこちら ナビゲーションメニューにWAI-ARIAのaria-current属性で現在位置を指定します。jQueryでページのURLを判別し、対象のa…

2024.06.14

HTML・CSS

90°回転させた要素をブロック要素内右側に収めるtransform-originの設定

右上に配置した長方形の要素を90°回転させた時に、親のブロック要素内に収めるtransform-originの設定です。デモページはこちら htmlは以下のよう…

2020.10.19

HTML・CSS

コーディング時のIE11のバグ

コーディング時に発生したIE11のバグのまとめです。主にflexboxで発生します。 ■ display: flexの要素にmin-heightを指定した場合、…

2024.08.15

HTML・CSS

box-decoration-breakでテキストの背景色を設定

box-decoration-breakプロパティでテキストに背景色を設定します。複数行の文字に対応でき、改行も問題ありません。デモページはこちら 以下のhtm…

上に戻る