ボタン装飾/プラス・マイナス1

見本

アコーディオンボタン閉アコーディオンボタン開

HTML

<a class="plus_btn">アコーディオンボタン閉</a>
<a class="plus_btn open">アコーディオンボタン開</a>

CSS

.plus_btn {
  width: fit-content;/*必須ではない*/
  display: block;/*必須ではない*/
  position: relative;
  padding-right: 22px;
}
.plus_btn::after {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  background-color: #000;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  -webkit-clip-path: polygon(calc(50% - 1px) 0, calc(50% + 1px) 0, calc(50% + 1px) calc(50% - 1px), 100% calc(50% - 1px), 100% calc(50% + 1px), calc(50% + 1px) calc(50% + 1px), calc(50% + 1px) 100%, calc(50% - 1px) 100%, calc(50% - 1px) calc(50% + 1px), 0 calc(50% + 1px), 0 calc(50% - 1px), calc(50% - 1px) calc(50% - 1px));
  clip-path: polygon(calc(50% - 1px) 0, calc(50% + 1px) 0, calc(50% + 1px) calc(50% - 1px), 100% calc(50% - 1px), 100% calc(50% + 1px), calc(50% + 1px) calc(50% + 1px), calc(50% + 1px) 100%, calc(50% - 1px) 100%, calc(50% - 1px) calc(50% + 1px), 0 calc(50% + 1px), 0 calc(50% - 1px), calc(50% - 1px) calc(50% - 1px));
  transition: height 0.2s ease-in;
}
.plus_btn.open::after {
  height: 2px;
}

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です