cursor

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since December 2021.

* Some parts of this feature may have varying levels of support.

Die cursor CSS-Eigenschaft legt den Mauscursor fest, der angezeigt werden soll, wenn sich der Mauszeiger über einem Element befindet.

Die Cursor-Einstellung sollte die Benutzer über die Mausaktionen informieren, die an der aktuellen Position ausgeführt werden können, einschließlich: Textauswahl, Aktivierung von Hilfe- oder Kontextmenüs, Kopieren von Inhalten, Ändern der Größe von Tabellen und so weiter. Sie können entweder den Typ des Cursors mit einem Schlüsselwort angeben oder ein spezifisches Symbol laden, das verwendet werden soll (mit optionalen Fallback-Bildern und einem obligatorischen Schlüsselwort als endgültigem Fallback).

Probieren Sie es aus

cursor: help;
cursor: wait;
cursor: crosshair;
cursor: not-allowed;
cursor: zoom-in;
cursor: grab;
<section class="default-example container" id="default-example">
  <div id="example-element">
    Move over this element to see the cursor style.
  </div>
</section>
#example-element {
  display: flex;
  background-color: #1766aa;
  color: white;
  height: 180px;
  width: 360px;
  justify-content: center;
  align-items: center;
  font-size: 14pt;
  padding: 5px;
}

Syntax

css
/* Keyword value */
cursor: auto;
cursor: pointer;
/* … */
cursor: zoom-out;

/* URL with mandatory keyword fallback */
cursor: url(hand.cur), pointer;

/* URL and coordinates, with mandatory keyword fallback */
cursor:
  url(cursor_1.png) 4 12,
  auto;
cursor:
  url(cursor_2.png) 2 2,
  pointer;

/* URLs and fallback URLs (some with coordinates), with mandatory keyword fallback */
cursor:
  url(cursor_1.svg) 4 5,
  url(cursor_2.svg),
  /* …, */ url(cursor_n.cur) 5 5,
  progress;

/* Global values */
cursor: inherit;
cursor: initial;
cursor: revert;
cursor: revert-layer;
cursor: unset;

Die cursor-Eigenschaft wird als null oder mehr <url>-Werte angegeben, getrennt durch Kommas, gefolgt von einem einzelnen obligatorischen Schlüsselwortwert. Jede <url> sollte auf eine Bilddatei verweisen. Der Browser versucht, das erste angegebene Bild zu laden und fällt auf das nächste zurück, wenn es nicht geladen werden kann, und fällt auf den Schlüsselwortwert zurück, wenn keine Bilder geladen werden konnten (oder wenn keine angegeben wurden).

Jede <url> kann optional von einem Paar aus einem Leerzeichen getrennten Zahlen gefolgt werden, die die <x>- und <y>-Koordinaten des Cursor-Hotspots relativ zur oberen linken Ecke des Bildes festlegen.

Werte

<url> Optional

Ein url() oder eine durch Kommas getrennte Liste url(), url(), …, die auf eine Bilddatei verweist. Mehr als ein <url> kann als Fallbacks angegeben werden, falls einige Cursor-Bildtypen nicht unterstützt werden. Ein Nicht-URL-Fallback (eines oder mehrere der Schlüsselwortwerte) muss am Ende der Fallback-Liste stehen.

<x>, <y> Optional

Optionale x- und y-Koordinaten, die den Cursor-Hotspot angeben; die genaue Position innerhalb des Cursors, die angezeigt wird.

Die Zahlen sind in Einheiten von Bildpixeln. Sie sind relativ zur oberen linken Ecke des Bildes, die 0 0 entspricht, und sind innerhalb der Grenzen des Cursor-Bildes begrenzt. Wenn diese Werte nicht angegeben sind, können sie aus der Datei selbst gelesen werden und standardmäßig an der oberen linken Ecke des Bildes liegen.

keyword

Ein Schlüsselwortwert muss angegeben werden, das entweder den zu verwendenden Cursor-Typ oder den Fallback-Cursor angibt, der verwendet werden soll, wenn alle angegebenen Symbole nicht geladen werden können.

Die verfügbaren Schlüsselwörter sind in der untenstehenden Tabelle aufgeführt. Abgesehen von none, das bedeutet, dass kein Cursor angezeigt wird, gibt es ein Bild, das zeigt, wie die Cursor früher gerendert wurden. Sie können die Maus über die Tabellenzeilen bewegen, um den Effekt der verschiedenen Cursor-Schlüsselwortwerte heute in Ihrem Browser zu sehen.

Kategorie Schlüsselwort Beispiel Beschreibung
Allgemein auto Der Benutzeragent bestimmt den anzuzeigenden Cursor basierend auf dem aktuellen Kontext. Z. B. äquivalent zu text beim Überfahren von Text.
default breiter Pfeil, der nach oben und links zeigt Der plattformabhängige Standard-Cursor. Typischerweise ein Pfeil.
none Es wird kein Cursor gerendert.
Links & Status context-menu breiter Pfeil, der nach oben und links zeigt und ein Menü-Symbol leicht verdeckt Ein Kontextmenü ist verfügbar.
help breiter Pfeil, der nach oben und links zeigt, neben einem Fragezeichen Hilfeinformation ist verfügbar.
pointer rechte Hand mit einem Zeigefinger, der nach oben zeigt Der Cursor ist ein Zeiger, der auf einen Link hinweist. Typischerweise ein Bild einer zeigenden Hand.
progress breiter Pfeil und Sanduhr Das Programm ist im Hintergrund beschäftigt, aber der Benutzer kann weiterhin mit der Benutzeroberfläche interagieren (im Gegensatz zu wait).
wait Sanduhr Das Programm ist beschäftigt, und der Benutzer kann nicht mit der Benutzeroberfläche interagieren (im Gegensatz zu progress). Manchmal ein Bild einer Sanduhr oder einer Uhr.
Auswahl cell breites Plus-Symbol Die Tabellenzelle oder der Satz von Zellen kann ausgewählt werden.
crosshair Plus-Symbol, bestehend aus zwei dünnen Linien. Kreuz-Cursor, oft verwendet, um eine Auswahl in einem Bitmap anzuzeigen.
text vertikaler Text-Cursor Der Text kann ausgewählt werden. Typischerweise die Form eines Textbalkens.
vertical-text horizontaler Text-Cursor Der vertikale Text kann ausgewählt werden. Typischerweise die Form eines seitwärts liegenden Textbalkens.
Ziehen & Ablegen alias breiter Pfeil, der nach oben und links zeigt, der ein kleineres Ordnersymbol mit einem nach oben und rechts zeigenden Pfeil teilweise verdeckt Ein Alias oder eine Verknüpfung soll erstellt werden.
copy breiter Pfeil, der nach oben und links zeigt, der ein kleineres Ordnersymbol mit einem Pluszeichen teilweise verdeckt Etwas soll kopiert werden.
move Pluszeichen aus zwei dünnen Linien, deren vier Punkte kleine Pfeile nach außen zeigen Etwas soll verschoben werden.
no-drop Zeigersymbol und ein Nicht-erlaubt-Symbol Ein Element darf nicht an der aktuellen Position abgelegt werden.
Firefox-Fehler 275173: Unter Windows und macOS ist no-drop dasselbe wie not-allowed.
not-allowed Nicht-erlaubt-Symbol, ein Kreis mit einer durchgehenden Linie Die angeforderte Aktion wird nicht ausgeführt.
grab vollständig geöffnete Hand Etwas kann ergriffen werden (zum Verschieben gezogen werden).
grabbing geschlossene Hand Etwas wird gerade ergriffen (zum Verschieben gezogen).
Größenänderung & Scrollen all-scroll Symbol eines mittleren Punktes mit vier Dreiecken darum herum. Etwas kann in jede Richtung gescrollt werden (verschoben).
Firefox-Fehler 275174: Unter Windows ist all-scroll dasselbe wie move.
col-resize col-resize.gif Das Element/Spalte kann horizontal in der Größe verändert werden. Oft als Pfeile dargestellt, die links und rechts zeigen, mit einer vertikalen Leiste dazwischen.
row-resize zwei schmale parallele horizontale Linien mit einem kleinen Pfeil, der nach oben und einem anderen, der nach unten zeigt Das Element/Zeile kann vertikal in der Größe verändert werden. Oft als Pfeile dargestellt, die nach oben und unten zeigen, mit einer horizontalen Leiste dazwischen.
n-resize schmaler langer Pfeil, der nach oben zeigt Eine Kante soll verschoben werden. Beispielsweise wird der se-resize-Cursor verwendet, wenn die Bewegung vom Südost-Eckpunkt des Rahmens ausgeht.
In einigen Umgebungen wird ein äquivalenter bidirektionaler Größenänderungs-Cursor angezeigt. Zum Beispiel sind n-resize und s-resize dasselbe wie ns-resize.
e-resize schmaler langer Pfeil, der nach rechts zeigt
s-resize schmaler langer Pfeil, der nach unten zeigt
w-resize schmaler langer Pfeil, der nach links zeigt
ne-resize schmaler langer Pfeil, der nach oben-rechts zeigt
nw-resize schmaler langer Pfeil, der nach oben-links zeigt
se-resize schmaler langer Pfeil, der nach unten-rechts zeigt
sw-resize schmaler langer Pfeil, der nach unten-links zeigt
ew-resize schmaler langer Pfeil, der nach links und rechts zeigt Bidirektionaler Größenänderungs-Cursor.
ns-resize schmaler langer Pfeil, der nach oben und unten zeigt
nesw-resize schmaler langer Pfeil, der sowohl nach oben-rechts als auch nach unten-links zeigt
nwse-resize schmaler langer Pfeil, der sowohl nach oben-links als auch nach unten-rechts zeigt
Zoomen zoom-in Lupe mit einem Plus-Zeichen

Etwas kann herein- oder herausgezoomt werden.

zoom-out Lupe mit einem Minus-Zeichen

Formale Definition

Anfangswertauto
Anwendbar aufalle Elemente
VererbtJa
Berechneter Wertwie angegeben, aber mit absoluten <url> Werten
Animationstypdiskret

Formale Syntax

cursor = 
[ [ <url> | <url-set> ] [ <x> <y> ]? ]#? [ auto | default | none | context-menu | help | pointer | progress | wait | cell | crosshair | text | vertical-text | alias | copy | move | no-drop | not-allowed | grab | grabbing | e-resize | n-resize | ne-resize | nw-resize | s-resize | se-resize | sw-resize | w-resize | ew-resize | ns-resize | nesw-resize | nwse-resize | col-resize | row-resize | all-scroll | zoom-in | zoom-out ]

<url> =
<url()> |
<src()>

<url()> =
url( <string> <url-modifier>* ) |
<url-token>

<src()> =
src( <string> <url-modifier>* )

Hinweise zur Verwendung

Grenzwerte für Icons

Obwohl die Spezifikation die Bildgröße des cursor nicht limitiert, beschränken Benutzeragenten diese gewöhnlich, um möglichen Missbrauch zu vermeiden. Zum Beispiel sind in Firefox und Chromium Cursorbilder standardmäßig auf 128x128 Pixel beschränkt, aber es wird empfohlen, die Cursorbildgröße auf 32x32 Pixel zu beschränken. Cursoränderungen mit Bildern, die größer sind als die maximal unterstützte Größe des Benutzeragenten, werden im Allgemeinen einfach ignoriert.

Unterstützte Bilddateiformate

Laut Spezifikation müssen Benutzeragenten PNG-Dateien, SVG v1.1-Dateien im sicheren statischen Modus, die eine natürliche Größe aufweisen, und alle anderen nicht animierten Bilddateiformate unterstützen, die sie für Bilder in anderen Eigenschaften unterstützen. Desktop-Browser unterstützen ebenfalls weit verbreitet das .cur-Dateiformat.

Die Spezifikation gibt weiterhin an, dass Benutzeragenten sollten auch SVG v1.1-Dateien im sicheren animierten Modus unterstützen, die eine natürliche Größe aufweisen, zusammen mit allen anderen animierten Bilddateiformaten, die sie für Bilder in anderen Eigenschaften unterstützen. Benutzeragenten können sowohl statische als auch animierte SVG-Bilder unterstützen, die keine natürliche Größe aufweisen.

iPadOS

iPadOS unterstützt Zeigegeräte wie Trackpads und Mäuse. Standardmäßig wird der iPad-Cursor als Kreis angezeigt, und der einzige unterstützte Wert, der das Erscheinungsbild des Zeigers ändert, ist text.

Weitere Hinweise

Cursor-Änderungen, die sich mit Symbolleistenbereichen überschneiden, werden häufig blockiert, um Spoofing zu vermeiden.

Beispiele

Cursorarten festlegen

css
.foo {
  cursor: crosshair;
}

.bar {
  cursor: zoom-in;
}

/* A fallback keyword value is required when using a URL */
.baz {
  cursor: url("hyper.cur"), auto;
}

Spezifikationen

Specification
CSS Basic User Interface Module Level 4
# cursor

Browser-Kompatibilität

Siehe auch