Benutzerdefinierter CSS-Cursor

Benutzerdefinierter Css Cursor



Der Cursor zeigt die Position auf dem Bildschirm an, wo der Benutzer klicken oder Text eingeben kann. Es können verschiedene Cursor für verschiedene Website-Komponenten verwendet werden. Ein Entwickler muss sicherstellen, dass die in der Anwendung verwendeten Cursor attraktiv sein müssen. Zum Beispiel kann ein Zeigehand-Cursor auf der Schaltfläche beim Überfahren mit der Maus verwendet werden. Der Textanzeiger (blinkende Linie) wird auf dem Textfeld verwendet, wo der Text einzugeben ist.

Es gibt mehrere Cursorstile in CSS, die verwendet werden, indem einfach der Wert der Cursoreigenschaft angegeben wird. Ein Entwickler kann jedoch mithilfe von CSS einen benutzerdefinierten Cursor erstellen.







Dieser Studienführer enthält Folgendes:



    • CSS-Cursor
    • Benutzerdefiniertes Cursor-CSS

Bevor wir auf das Thema stoßen, sehen wir uns einige der CSS-Cursorformen mit einem praktischen Beispiel an.



CSS-Cursor

Das CSS „ Mauszeiger ”-Eigenschaft hat verschiedene Werte, z. B. einen Zeiger, keine, Fortschritt und mehr. Lassen Sie uns eine Tabelle erstellen, die Zeilen enthält, auf denen verschiedene Cursor beim Überfahren mit der Maus angezeigt werden.





Beispiel: Erstellen einer Tabelle, die verschiedene CSS-Cursor in HTML darstellt

Fügen Sie zuerst das

-Element in HTML hinzu. Innerhalb dieses Elements:



    • Das Tag
wird verwendet, um Zeilen zu erstellen.
  • Die erste Zeile enthält die Überschriften.
  • Diese Überschriften werden durch Verwendung der
  • -Tags enthalten zwei
    -Tags angegeben. Andere
    -Tags, um die Spalten mit Daten zu füllen.
  • Das zweite
  • -Tag stellt die Schaltflächenelemente dar, die mit einem CSS angewendet werden. Mauszeiger ” Eigenschaft mit unterschiedlichen Werten.

    Der HTML-Code für das obige Szenario ist unten angegeben:

    < Tisch >
    < tr >
    < th Stil = 'Breite: 200px;' > CSS-Cursor-Selektor th >
    < th Stil = 'Breite: 200px;' > Cursor-Stil th >
    tr >
    < tr >
    < td > Cursor: Zeiger td >
    < td >< Knopf Stil = 'Cursor: Zeiger;' > Zeiger Knopf > td >
    tr >
    < tr >
    < td > Cursor: Fortschritt td >
    < td >< Knopf Stil = 'Cursor: Fortschritt;' > Fortschritt Knopf > td >
    tr >
    < tr >
    < td > Cursor: nicht erlaubt td >
    < td >< Knopf Stil = 'Cursor: nicht erlaubt;' > nicht erlaubt Knopf > td >
    tr >
    < tr >
    < td > Cursor: keine td >
    < td >< Knopf Stil = 'Cursor: keiner;' > keiner Knopf > td >
    tr >
    < tr >
    < td > Cursor: bewegen td >
    < td >< Knopf Stil = 'Cursor: bewegen;' > Bewegung Knopf > td >
    tr >
    < tr >
    < td > Cursor: greifen td >
    < td >< Knopf Stil = 'Cursor: greifen;' > greifen Knopf > td >
    tr >
    < tr >
    < td > Cursor: kopieren td >
    < td >< Knopf Stil = 'Cursor: Kopieren;' > Kopieren Knopf > td >
    tr >
    < tr >
    < td > Cursor: Spaltengröße ändern td >
    < td >< Knopf Stil = 'Cursor: col-resize;' > col-Größe ändern Knopf > td >
    tr >
    < tr >
    < td > Cursor: Zeilengröße ändern td >
    < td >< Knopf Stil = 'Cursor: Zeilengröße ändern;' > Zeilengröße ändern Knopf > td >
    tr >
    < tr >
    < td > Cursor: Text td >
    < td >< Knopf Stil = 'Cursor: Text;' > Text Knopf > td >
    tr >
    Tisch >


    Der obige Code erzeugt das folgende Ergebnis:


    Im nächsten Abschnitt wenden wir verschiedene Stile auf die HTML-Elemente an.

    Gestalten Sie „alle“ Elemente

    * {
    Polsterung: 0 ;
    Gewinnspanne: 0 ;
    Schriftfamilie: Arial, Helvetica, serifenlos;
    }


    Alle HTML-Elemente werden mit CSS-Stilen angewendet, die unten erklärt werden:

      • Polsterung „Eigenschaft mit“ 0 ”-Wert enthält kein Leerzeichen um den Inhalt des Elements.
      • Gewinnspanne „Eigenschaft mit“ 0 ”-Wert fügt außerhalb jedes der Elemente kein Leerzeichen hinzu.
      • Schriftfamilie „Eigenschaft wird ein Wert zugewiesen“ Arial, Helvetica, serifenlos “. Die Liste der Schriftstile wird angegeben, um sicherzustellen, dass andere Stile angewendet werden müssen, wenn der erste Stil nicht vom Browser unterstützt wird.

    Stilelement „Tabelle“.

    Tisch {
    Rand: 0px automatisch;
    Rand: 1px festes Gainsboro;
    }


    Das HTML-Tabellenelement wird mit den nachfolgend beschriebenen CSS-Eigenschaften angewendet:

      • Grenze ” Eigenschaft wird mit dem Wert gesetzt “ 1px festes Gainsboro “, das die Rahmenbreite, den Rahmenstil und die Rahmenfarbe darstellt.

    Gewinnspanne ”-Eigenschaft verhält sich wie oben angegeben.

    Style „td“-Element

    td {
    Textausrichtung: Mitte;
    }


    Das

    -Element wird mit der Eigenschaft „ Textausrichtung „mit dem Wert“ Center “. Dadurch wird der Text der Spalte in der Mitte ausgerichtet.

    Style „Button“-Element

    Knopf {
    Hintergrundfarbe: kadettblau;
    Polsterung: 10px 10px;
    Farbe: #ffffff;
    Breite: 150px;
    }


    Das im obigen HTML-Code verwendete Schaltflächenelement ist mit neuen CSS-Eigenschaften gestaltet, die im Folgenden erläutert werden:

      • Hintergrundfarbe “ gibt die Farbe des Hintergrunds des Elements an.
      • Polsterung “ mit den zugewiesenen Werten als „ 10px 10px “ fügt einen Platz von 10 Pixel oben und unten und 10 Pixel links und rechts von den Elementen des Elements hinzu.
      • Farbe “ passt die Schriftfarbe des Elements an.
      • Breite “ ist die Eigenschaft, die die Breite des Elements anpasst.

    Der obige Code erzeugt das folgende Ergebnis:


    Bisher haben wir die von CSS bereitgestellten Cursor besprochen. Im nächsten Abschnitt wird das Beispiel beschreiben, wie Sie einen benutzerdefinierten Cursor mit CSS erstellen.

    Benutzerdefiniertes Cursor-CSS

    Die Entwickler müssen für ihre Anwendungen geeignete Cursor verwenden. Cursor sollten attraktiv gestaltet werden, um die Aufmerksamkeit der Benutzer zu gewinnen. Darüber hinaus kann für diesen Zweck der benutzerdefinierte Cursor erstellt werden.

    Sehen Sie sich das Beispiel unten an!

    Beispiel: Wie erstelle ich einen benutzerdefinierten Cursor mit CSS?

    Fügen Sie in HTML zwei div-Elemente hinzu. Eins mit der Klasse“ Kreis “ und der andere mit der Klasse „ Punkt “.

    HTML

    < div Klasse = 'Kreis' > div >
    < div Klasse = 'Punkt' > div >


    Gehen wir weiter zum CSS-Bereich.

    Style „Körper“-Element

    Karosserie {
    Höhe: 100vh;
    }


    Das Body-Element der HTML-Datei wird mit dem Stil „ Höhe ”-Eigenschaft zum Festlegen der Höhe des Elements.

    Stil „Kreis“ div

    .Kreis {
    Breite: 20px;
    Höhe: 20px;
    Rand: 2px durchgehend weiß;
    Grenzradius: fünfzig % ;
    }


    Nachfolgend finden Sie die Erläuterung der CSS-Eigenschaften, die auf das div-Element mit der Klasse „ Kreis “:

      • Breite ”-Eigenschaft passt die Breite des Elements an.
      • Grenze ” Eigenschaft mit dem angegebenen Wert als “ 2px durchgehend weiß ” stellt die Rahmenbreite, den Rahmenstil und die Farbe dar.
      • Grenzradius ”-Eigenschaft ändert den Rahmen des Elements rund.

    Stil „Punkt“ div

    .Punkt {
    Breite: 5px;
    Höhe: 5px;
    Hintergrundfarbe: weiß;
    Grenzradius: fünfzig % ;
    }


    Das div-Element mit Klassenpunkt ist mit verschiedenen Eigenschaften versehen, die im Folgenden beschrieben werden:

      • Hintergrundfarbe ”-Eigenschaft gibt die Farbe des Hintergrunds des Elements an.
      • Grenzradius ” rundet die Kanten des Elements ab.
      • Andere Eigenschaften funktionieren genauso wie besprochen.

    Der angegebene Code zeigt den folgenden Cursor auf der Webseite an:


    Wir haben den Cursor mit HTML und CSS erstellt. Im nächsten Abschnitt wird nun der JavaScript-Code geschrieben, um dem Cursor die erforderliche Funktionalität hinzuzufügen.

    JavaScript

    < Skript >
    const cursorCircle = document.querySelector ( '.Kreis' ) ;
    const cursorPoint = document.querySelector ( '.Punkt' ) ;
    const moveCursor = ( und ) = > {
    const mouseY = e.clientY;
    const mouseX = e.clientX;

    cursorCircle.style.transform = ` Übersetzen ( ${mouseX} px, ${mouseY} px ) ` ;
    cursorPoint.style.transform = ` Übersetzen ( ${mouseX} px, ${mouseY} px ) ` ;
    }
    window.addEventListener ( 'Mausbewegung' , Bewegungscursor )
    Skript >


    Die Beschreibung des obigen JavaScript-Codes ist unten angegeben:

      • Das ”-Tag ist mit dem -Tag gekoppelt, das zum Schreiben von JavaScript-Code verwendet wird.
      • konst ”-Schlüsselwort gibt an, dass das const-Schlüsselwort, gefolgt von einer Variablen, nicht neu zugewiesen werden kann.
      • document.querySelector(‘.circle’) ” gibt das Kreis-Div-Element zurück, das mit dem angegebenen Selektor im Dokument übereinstimmt.
      • document.querySelector(‘.point’) ” gibt das Punkt-Div-Element zurück, das mit dem angegebenen Selektor im Dokument übereinstimmt.
      • const moveCursor = (e) => ” Diese Funktion spezifiziert die Cursorfunktion.
      • e.clientY ” gibt die vertikale Koordinate zurück, als das Mausereignis ausgelöst wurde.
      • e.clientX ” gibt die horizontale Koordinate zurück, wenn das Mausereignis ausgelöst wird.
      • cursorCircle.style.transform ” Das Kreis-Div wird mit Stiltransformation angewendet.
      • cursorPoint.style.transform ” Der Punkt div wird mit style transform angewendet.
      • translate(${mouseX}px, ${mouseY}px) ”-Wert der transform-Eigenschaft legt die horizontalen und vertikalen Koordinaten fest.
      • window.addEventListener(‚Maus‘, moveCursor) ” Ereignis-Listener-Methode hört auf die Mausbewegung. Es ist Teil des globalen Fensterobjekts.

    Nachdem Sie die obigen Codeblöcke bereitgestellt haben, bewegt sich der Cursor automatisch wie unten gezeigt auf dem Bildschirm:


    Das ist cool! Wir haben einen benutzerdefinierten Cursor mit verschiedenen CSS-Eigenschaften erstellt.

    Fazit

    Das CSS „ Mauszeiger ”-Eigenschaft verfügt über zahlreiche Werte, die verschiedene Cursorstile angeben. Durch die Verwendung der HTML-Elemente und CSS-Eigenschaften können wir jedoch benutzerdefinierte Cursor erstellen. Dann wird JavaScript-Code implementiert, um seine Funktionalität zu aktivieren. Diese Studie hat anhand eines praktischen Beispiels gezeigt, wie Sie benutzerdefinierte CSS-Cursor erstellen können.