Heim > Web-Frontend > CSS-Tutorial > Wie erstelle ich mit CSS eine umgekehrte oder ausgeschnittene Kreisform?

Wie erstelle ich mit CSS eine umgekehrte oder ausgeschnittene Kreisform?

DDD
Freigeben: 2024-12-31 17:38:10
Original
834 Leute haben es durchsucht

How to Create an Inverse or Cutout Circle Shape Using CSS?

CSS 3-Form: „Umgekehrter Kreis“ oder „Ausgeschnittener Kreis“

In CSS ist ein umgekehrter Kreis oder ausgeschnittener Kreis eine Form, die einem Kreis mit einem ähnelt Ausschnittabschnitt. Dies kann mit verschiedenen Techniken erreicht werden, aber zwei gängige Methoden umfassen:

Verwendung verschachtelter Elemente und absoluter Positionierung

Diese Methode beinhaltet die Erstellung zweier verschachtelter Elemente, eines inneren Kreises (#a), um den zu bilden massiver kreisförmiger Teil und eine äußere Form (#b), die einen negativen Z-Index enthält, um ihn hinter dem inneren Kreis zu positionieren. Die äußere Form verfügt über einen gekrümmten Ausschnitt, der durch CSS-Ränder und negative Ränder/Abstandsanpassungen erreicht wird.

Beispielcode:

<div>
Nach dem Login kopieren
Nach dem Login kopieren
.inversePair {
  border: 1px solid black;
  background: grey;
  display: inline-block;
  position: relative;
  height: 100px;
  text-align: center;
  line-height: 100px;
  vertical-align: middle;
}

#a {
  width: 100px;
  border-radius: 50px;
}

#a:before {
  content: ' ';
  left: -6px;
  top: -6px;
  position: absolute;
  z-index: -1;
  width: 112px;
  height: 112px;
  border-radius: 56px;
  background-color: white;
}

#b {
  width: 200px;
  z-index: -2;
  padding-left: 50px;
  margin-left: -55px;
  overflow: hidden;
  -webkit-border-top-right-radius: 20px;
  -webkit-border-bottom-right-radius: 20px;
  -moz-border-radius-topright: 20px;
  -moz-border-radius-bottomright: 20px;
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
}

#b:before {
  content: ' ';
  left: -58px;
  top: -7px;
  position: absolute;
  width: 114px;
  height: 114px;
  border-radius: 57px;
  background-color: black;
}
Nach dem Login kopieren

Verwenden eines radialen Hintergrundverlaufs und einer absoluten Positionierung

Eine andere Methode besteht darin, einen Kreis mit einem radialen CSS3-Hintergrundverlauf zu erstellen und ein absolut positioniertes Div mit negativem Rand zu platzieren, um den Ausschneideeffekt zu erzeugen. Diese Option eignet sich für Browser, die radiale CSS-Verläufe unterstützen.

Beispielcode:

<div>
Nach dem Login kopieren
Nach dem Login kopieren
.inversePair {
  border: 1px solid black;
  display: inline-block;
  position: relative;
  height: 100px;
  text-align: center;
  line-height: 100px;
  vertical-align: middle;
}

#a {
  width: 100px;
  border-radius: 50px;
  background: grey;
  z-index: 1;
}

#b {
  width: 200px;
  padding-left: 30px;
  margin-left: -30px;
  border-left: none;
  -webkit-border-top-right-radius: 20px;
  -webkit-border-bottom-right-radius: 20px;
  -moz-border-radius-topright: 20px;
  -moz-border-radius-bottomright: 20px;
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
  background-image: /* radial-gradient syntax for various browsers */;
}
Nach dem Login kopieren

Diese Techniken bieten flexible Optionen zum Erstellen umgekehrter oder ausgeschnittener Kreise in CSS, ohne auf Bilder angewiesen zu sein. Die geeignete Wahl hängt von der Browserkompatibilität, den Designanforderungen und dem gewünschten Effekt ab.

Das obige ist der detaillierte Inhalt vonWie erstelle ich mit CSS eine umgekehrte oder ausgeschnittene Kreisform?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage