DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!
Die `cursor`-Eigenschaft in CSS steuert, wie der Mauszeiger aussieht, wenn er sich über dem Element befindet, auf das diese Eigenschaft angewendet wird. Offensichtlich ist sie nur in Browsern/Betriebssystemen relevant, in denen es eine Maus und einen Cursor gibt. Sie werden im Wesentlichen für die Benutzererfahrung verwendet, um die Idee einer bestimmten Funktionalität zu vermitteln. Versuchen Sie also, diese Interaktion nicht zu stören.
Es gibt eine ganze Reihe davon
.auto { cursor: auto; }
.default { cursor: default; }
.none { cursor: none; }
.context-menu { cursor: context-menu; }
.help { cursor: help; }
.pointer { cursor: pointer; }
.progress { cursor: progress; }
.wait { cursor: wait; }
.cell { cursor: cell; }
.crosshair { cursor: crosshair; }
.text { cursor: text; }
.vertical-text { cursor: vertical-text; }
.alias { cursor: alias; }
.copy { cursor: copy; }
.move { cursor: move; }
.no-drop { cursor: no-drop; }
.not-allowed { cursor: not-allowed; }
.all-scroll { cursor: all-scroll; }
.col-resize { cursor: col-resize; }
.row-resize { cursor: row-resize; }
.n-resize { cursor: n-resize; }
.e-resize { cursor: e-resize; }
.s-resize { cursor: s-resize; }
.w-resize { cursor: w-resize; }
.ns-resize { cursor: ns-resize; }
.ew-resize { cursor: ew-resize; }
.ne-resize { cursor: ne-resize; }
.nw-resize { cursor: nw-resize; }
.se-resize { cursor: se-resize; }
.sw-resize { cursor: sw-resize; }
.nesw-resize { cursor: nesw-resize; }
.nwse-resize { cursor: nwse-resize; }
Der Cursor kann auch ein Bild sein
.custom {
/* The second value here is a fallback. */
cursor: url(images/my-cursor.png), auto;
/* You may need coordinates to adjust the pointer
for example, the custom cursor is circular and you want
the middle to be where you click */
cursor: url(target.svg) 15 15, move;
}
Einige WebKit-spezifische Cursor
-webkit-zoom-in
-webkit-zoom-out
-webkit-zoom-grab
-webkit-zoom-grabbing
Weitere Informationen
Browser-Unterstützung
Diese Browser-Supportdaten stammen von Caniuse, die mehr Details enthalten. Eine Zahl gibt an, dass der Browser die Funktion ab dieser Version unterstützt.
Desktop
| Chrome | Firefox | IE | Edge | Safari |
|---|---|---|---|---|
| 5 | 4 | 9 | 14 | 5 |
Mobil / Tablet
| Android Chrome | Android Firefox | Android | iOS Safari |
|---|---|---|---|
| 127 | Nein | 127 | Nein |
Und für neuere Werte wie `zoom-in` und `zoom-out`
Diese Browser-Supportdaten stammen von Caniuse, die mehr Details enthalten. Eine Zahl gibt an, dass der Browser die Funktion ab dieser Version unterstützt.
Desktop
| Chrome | Firefox | IE | Edge | Safari |
|---|---|---|---|---|
| 4* | 2* | Nein | 12 | 3.1* |
Mobil / Tablet
| Android Chrome | Android Firefox | Android | iOS Safari |
|---|---|---|---|
| 127 | Nein | 127 | Nein |
col-resize funktioniert in Chrome nicht, er verschwand einfach, als ich über den Bereich schwebte, der den Stil `cursor:col-resize` hatte
Ich sehe den guten Cursor beim Hovern in Chrome.
Kleine Anmerkung hier: Laut den oben verlinkten Moz-Dokumenten wird 'not-allowed' für IE6 und höher unterstützt. Ich weiß das nur, weil ich hier nach einer Fehlerbehebung gesucht habe, damit dieser Cursor-Typ in IE nicht angezeigt wird, wenn er dynamisch über jQuery hinzugefügt wird.
+1
Vielen Dank, Trav. Ich wurde verrückt, weil der Cursor sich nicht änderte. Es stellte sich heraus, dass ich das gleiche Problem wie du mit jQuery hatte.
Vielen Dank für diese coole Art, Cursor darzustellen, jetzt habe ich einen Ort, an den ich gehen kann, um den richtigen Cursor zu finden, falls ich ihn vergesse. Ich wollte das schon immer.
Prost!
Kleine Anmerkung zu den WebKit-spezifischen Cursor-Typen
Sie existieren nicht, der "zoom"-Teil muss für diese entfernt werden und sollte lauten
Ich finde diese nützlich beim Erstellen von Webkit-spezifischen Webanwendungen :)
Adam, wie änderst du die Cursor für die DOM-Elemente? Ich verstehe -webkit-grab, aber nicht -grabbing. Muss ich vielleicht das "ondrag"-Ereignis behandeln, wenn ich jQuery UI Draggable verwende? Oder die Klassen in den "start"- und "end"-Ereignissen ändern? Danke!
Nein, er meint, dass es kein `cursor:-webkit-zoom-grab` gibt, wie oben angegeben. Es sollte `"-webkit-grab"` sein.
Weiß jemand, wie man den Cursor als tatsächlichen Text gestalten kann? Ich habe das mit jQuery und einem Div erreicht, das die Position des Cursors verfolgt – das einzige Problem ist, dass der Cursor dann nichts anklicken/hovern kann, da das Div alles darunter blockiert. Irgendwelche Ideen?
Danke!
@joss; du ROCKST!
Ich habe einen Codepen erstellt, in dem ich data-uri verwende, um Inline-benutzerdefinierte Cursor hinzuzufügen: http://codepen.io/netsi1964/full/DsAhE
Danke! Was für eine praktische kleine Referenz, hat mir einiges an Frustration erspart!
Eines der besten Cursor-Tutorials, das ich je gesehen habe :- Prost an Chris
Könntest du mir ein Beispiel für IE mit zoom-in und zoom-out geben, da sie funktionieren und ich hier keine Beispiele mit diesen gesehen habe?
Demo?
Wenn ich CSS verwende, um das Cursorbild zu ändern, wenn es über ein Div fährt, funktioniert es mit einem Smiley, aber nicht mit einem selbst erstellten Bild mit denselben Bildeigenschaften wie der Smiley (auch ein GIF mit reduzierten Farben)... Ich sehe den Unterschied nicht... warum funktioniert der Smiley aus dem Web, aber nicht mein Bild?
@Ann Ich habe einen Codepen erstellt, in dem ich mit benutzerdefinierten Cursor-Typen experimentiert habe. Bitte beachten Sie, dass dies im Allgemeinen nicht unterstützt wird. Benutzerdefinierte Cursor mit data-uri
Weiß jemand, was der Unterschied zwischen `wait` und `progress` ist? Auf Safari sehen sie gleich aus. Ist es reine Semantik?
Unter Windows
"progress" = Cursor + rotierender Kreis = (Sie können die Seite verwenden, aber sie ist beschäftigt)
"wait" = nur rotierender Kreis = (Sie können die Seite nicht verwenden)
Ich habe ein benutzerdefiniertes Cursorbild mit dem bereitgestellten Code erstellt, aber im Frontend hat der Cursor eine sehr dünne schwarze Umrandung. Gibt es eine Möglichkeit, diese zu entfernen?
Ich habe auch versucht, mein benutzerdefiniertes Bild als Cursor mit der oben gezeigten CSS-Zeile hinzuzufügen. Es wird nichts angezeigt. Gibt es -webkit-moz-o Anforderungen?
Danke.
Hey Leute,
Hat jemand einen vergrößerten benutzerdefinierten Cursor erlebt? Wie eine lächerliche Vergrößerung?
Jede Hilfe wäre großartig!
Danke!
Danke!
Danke :)
Ich wollte den Cursor als Bild verwenden. Ich habe die URL aufgeschrieben, aber es hat nicht funktioniert. Dann habe ich deinen Artikel gesehen und mein Problem gelöst. Danke Mann.
Cursor: not-allowed funktioniert auf IE5 für Mac.
Der Standard-Cursor funktioniert in Mozilla 30. Danke! Es ist wunderbar ...
Es sollte beachtet werden, dass es bei Pseudo-Elementen nicht funktioniert.
Ja, dieses sehr nützliche Tutorial.
Weiß jemand den Unterschied zwischen `auto` und `default`? Danke.
Das **default** erzwingt den Cursor zum Pfeil, den man in den meisten normalen Anwendungen sieht.
**Auto** ist das, was bei normaler Verwendung auftritt. Es erlaubt dem Betriebssystem (oder wem auch immer), das Erscheinungsbild des Cursors zu steuern, und es ändert sich kontextabhängig, wie es normalerweise tut.
Sie haben nur vergessen, CSS zum **default**-Demo oben hinzuzufügen, daher verhält es sich wie **auto**.
Kleines Problem: Dem default-Div fehlt der angewendete Stil "cursor: default", sodass beim Überfahren des Textes der Cursor zum Textcursor-Typ wechselt. Wenn "cursor: default" auf ein Element angewendet wird, sollte es immer der Standard-Pfeilcursor sein.
Hier ist ein jsfiddle, wenn Sie jeden in der Demo sehen möchten
http://jsfiddle.net/ewhb866y/1/
sehr nützliches Tutorial.. danke..
Gibt es eine Möglichkeit, das Cursorbild per Lazy Loading zu laden?
Gibt es eine Möglichkeit, das Cursorbild per Lazy Loading zu laden?
Nun, du hast einen Cursornamen vergessen: "grab".
$("tbody tr").css("cursor", "grab");
cursor:grab funktioniert nicht in Chrome.
Verwenden Sie cursor:-webkit-drag
Danke für die Info! Gilt das noch für OSX Yosemite? Ich kann `cursor: pointer;` (Hand) nicht mehr zum Laufen bringen.
Danke im Voraus.
Hallo, ich habe einen benutzerdefinierten Cursor implementiert wie:
Dies funktioniert einwandfrei, wenn ich auf meine Seite über HTTP zugreife. Sobald ich auf meine Seite über HTTPS zugreife, funktioniert es nicht mehr. Es wird nur der Standard-Cursor angezeigt. Ich habe IE10 und Windows. Ich habe versucht, auch absolute URLs anzugeben, aber ohne Erfolg. Kann mir jemand bitte helfen?
Es wäre cool/interessant, wenn der Cursor per CSS gesetzt werden könnte. Zum Beispiel, indem man `content: "Mehr lesen"` + welche Schriftart, Hintergrund & Farbe usw. einstellt.
:)
Danke, es hat geholfen.
Wirklich, das ist so effektiv, um mehr über Cursor in CSS zu erfahren.
Kannst du mir helfen, ich will den Hand-Cursor.
Hallo Yahya
Schau dir das an: Benutzerdefinierte Cursor mit data-uri. Es zeigt, wie man benutzerdefinierte Cursor erstellt.
Du kannst (cursor:pointer;) in einer CSS-Klasse verwenden
Hallo. Ich bin ein Schüler der 9. Klasse und versuche, meinen Cursor in HTML mit einem Bild anzupassen, aber es funktioniert nicht. Kann mir bitte jemand helfen?
Kannst du deinen Code posten?
Auf meiner Webseite ändern sich alle Cursortypen nach einiger Zeit wieder zu default. Weiß jemand, warum das so ist?
Herr Anthony, haben Sie Ratschläge, was ich tun kann, damit das Icon gerendert wird. Ich entwickle die Website noch. Jede Hilfe wäre willkommen, Danke
Jede Hilfe wäre willkommen, Danke
Ich würde vorschlagen, relative Pfade anstelle von absoluten Pfaden zu verwenden,
also wenn Sie Ihr HTML-Dokument im selben Ordner wie Ihre .ico-Datei platzieren.
Versuchen Sie
Körper {
cursor: url('Antivirus.ico'), default;
}
Leider funktioniert dies in keinem meiner Browser; ich benutze Windows 8.1 und Google Chrome, Firefox und das Standard-IExplorer als einige der möglichen Browser, die ich verwende. Ich habe sie alle ausprobiert und keiner hat das Icon gerendert.
Wenn ich es irgendwo verloren habe, können Sie sich gerne melden und mir Ratschläge geben. Bitte und danke.
/* Syntax */
Körper {
cursor: url("C:\Users\User\Documents\Notepadd\Antivirus.ico"), default; /* Wir haben unseren benutzerdefinierten Cursor und auch den Standard-Fallback-Cursor festgelegt */
}
Ich möchte den Cursor bei Hover auf einem Bild in Text ändern. Kennt jemand den Trick?
Ja! Die `cursor`-Eigenschaft akzeptiert einen URL-Parameter, bei dem Sie ein Bild angeben können. Das "Benutzerdefiniert"-Beispiel in diesem Beitrag zeigt die Syntax
.custom {cursor: url(images/my-cursor.png), auto;
}
Hier ist ein weiterer Beitrag mit einigen Beispielen: https://css-tricks.de/using-css-cursors/
Wie kann ich meinen Cursor so groß machen wie auf dieser Seite, das macht so viel Spaß!!
http://www.louiswalch.com/
Danke, das war sehr hilfreich! Ich habe dieses CSS verwendet, um ein Sprechersymbol als Mauszeiger anzuzeigen, wenn ich über das Hero-Video bei https://winway.se fahre
cursor: url("https://winway.se/wp-content/uploads/2020/09/sound_test-1-e1599744120404.png"), auto;Es funktioniert perfekt in Chrome, aber Safari zeigt nur den Standardzeiger. Haben Sie Ratschläge, was falsch ist? Wenn ich die PNG-Cursorbeispiele auf css-tricks.com teste, funktionieren sie in Safari einwandfrei.
Wenn Sie den Offset eines Cursorbildes ändern möchten, können Sie Koordinaten wie folgt hinzufügen
(Werte werden in Pixeln mit der Syntax `cursor: [ [<x> <y>]?,]` angegeben.)