ホームページ >ウェブフロントエンド >CSSチュートリアル >完全に湾曲したエッジを持つ CSS 六角形を作成するには?

完全に湾曲したエッジを持つ CSS 六角形を作成するには?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-02 01:44:15876ブラウズ

How to Create a CSS Hexagon with Fully Curved Edges?

CSS 曲線エッジ六角形

CSS を使用して、曲線エッジを持つ六角形を作成できます。ただし、上端と下端が真っ直ぐのままになるという問題が発生する場合があります。すべてのエッジを曲線にする解決策は次のとおりです:

元の CSS:

#hexagon-circle {
    width: 100px;
    height: 55px;
    background: red;
    position: relative;
    border-radius: 10px;
}
#hexagon-circle:before {
    content: "";
    position: absolute;
    top: -25px;
    left: 0;
    width: 0;
    height: 0;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-bottom: 29px solid red;
    border-radius: 10px;
}
#hexagon-circle:after {
    content: "";
    position: absolute;
    bottom: -25px;
    left: 0;
    width: 0;
    height: 0;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-top: 29px solid red;
    border-radius: 10px;
}

解決策:

元の CSS を置き換えますCSS と以下:

.hex {
  position: relative;
  margin: 1em auto;
  width: 10em;
  height: 17.32em;
  border-radius: 1em/.5em;
  background: orange;
  transition: opacity .5s;
}

.hex:before,
.hex:after {
  position: absolute;
  width: inherit;
  height: inherit;
  border-radius: inherit;
  background: inherit;
  content: '';
}

.hex:before {
  -webkit-transform: rotate(60deg);
  transform: rotate(60deg);
}

.hex:after {
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}

HTML:

<div>

このアプローチでは、境界線の半径と変換を使用して、曲線エッジを持つ六角形を作成します。

以上が完全に湾曲したエッジを持つ CSS 六角形を作成するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。