CSS @property κανόνας

Καθορισμός και χρήση

CSS @property Οι κανόνες χρησιμοποιούνται για τη άμεση καθορισμό προσαρμοσμένων CSS ιδιοτήτων στη στυλ τάμπλη χωρίς να χρειάζεται να εκτελεστεί οποιοσδήποτε JavaScript.

@property Οι κανόνες έχουν λειτουργίες ελέγχου τύπου δεδομένων και περιορισμών, μπορούν να καθορίσουν προεπιλεγμένες τιμές και να ορίσουν αν η ιδιότητα μπορεί να κληρονομήσει τιμή.

Χρήση @property Τα πλεονεκτήματα:

  • Έλεγχος τύπου και περιορισμοί: Πρέπει να καθοριστεί ο τύπος δεδομένων της προσαρμοσμένης ιδιότητας, όπως <number>, <color>, <length> κ.λπ. Αυτό μπορεί να αποτρέψει τα σφάλματα και να διασφαλίσει τη σωστή χρήση της προσαρμοσμένης ιδιότητας.
  • Ρύθμιση προεπιλεγμένης τιμής: Μπορεί να καθοριστεί προεπιλεγμένη τιμή για την προσαρμοσμένη ιδιότητα. Αυτό διασφαλίζει ότι αν ανατίθεται μια μη έγκυρη τιμή, ο περιηγητής θα χρησιμοποιήσει την καθορισμένη υποθετική τιμή.
  • Ρύθμιση συμπεριφοράς κληρονομικότητας: Πρέπει να καθοριστεί αν η προσαρμοσμένη ιδιότητα μπορεί να κληρονομήσει τιμή από το γονικό στοιχείο.

Παράδειγμα: Καθορισμός προσαρμοσμένων ιδιοτήτων

@property --my-color {
  grammar: "<color>";
  κληρονομικότητα: true;
  initial-value: lightgray;
}

Η παραπάνω καθορισμός σημαίνει ότι το --my-color είναι μια ιδιότητα χρώματος που μπορεί να κληρονομήσει τιμή από το γονικό στοιχείο και έχει ως προεπιλεγμένη τιμή το lightgray.

Στο CSS χρησιμοποιούμε τις προσαρμοσμένες ιδιότητες:

body {}}
  backgound-color: var(--my-color);
}

Παράδειγμα

Παράδειγμα 1

Ορίζει δύο προσαρμοσμένες ιδιότητες για την παραλλαγή - και χρησιμοποιείται για την анимαζία της παραλλαγής:

@property --startColor {
  grammar: "<color>";
  initial-value: #EADEDB;
  κληρονομικότητα: false;
}
@property --endColor {
  grammar: "<color>";
  initial-value: #BC70A4;
  κληρονομικότητα: false;
}

Προσπαθήστε το شخصικά

Παράδειγμα 2

Ορίζει δύο προσαρμοσμένες ιδιότητες: μια για το μέγεθος του αντικειμένου και μια για το χρώμα του αντικειμένου:

@property --item-size {
  grammar: "<percentage>";
  κληρονομικότητα: true;
  initial-value: 50%;
}
@property --item-color {
  grammar: "<color>";
  κληρονομικότητα: false;
  initial-value: lightgray;
}

Προσπαθήστε το شخصικά

Γραμματική CSS

@property --propertyname {
  grammar: "<color>";
  initial-value: red;
  κληρονομικότητα: false;
}

Τιμή ιδιότητας

Τιμή Περιγραφή
--propertyname Απαιτείται. Το όνομα της προσαρμοσμένης ιδιότητας.
grammar

Μπορεί να είναι <length>, <number>, <percentage>, <length-percentage>, <color>, <image>, <url>, <integer>, <angle>, <time>, <resolution>, <transform-function> ή <custom-ident>, ή λίστα τύπων δεδομένων και κλειδιών τιμών.

+ (χωρισμένοι με κενά) και # (χωρισμένοι με κόμματα) πολλαπλασιαστές δείχνουν ότι αναμένεται μια λίστα τιμών, όπως <color># δείχνει ότι η αναμενόμενη γραμματική είναι μια λίστα τιμών <color> που είναι διπλωμένες με κόμματα.

Η κάθετη γραμμή (|) μπορεί να δημιουργήσει μια συνθήκη "ή" για την αναμενόμενη γραμματική, όπως <length> | auto αποδέχεται <length> ή auto, ενώ <color># | <integer># αναμένει μια λίστα τιμών <color> που είναι διπλωμένες με κόμμα ή λίστα τιμών <integer> που είναι διπλωμένες με κόμμα.

initial-value Ορίζει την αρχική τιμή της ιδιότητας.
κληρονομικότητα true ή false. Ελέγχει αν η εγγραφή της προσαρμοσμένης ιδιότητας που καθορίζεται από @property προορίζεται για προεπιλεγμένη κληρονομικότητα.

Υποστήριξη περιηγητή

Τα αριθμήματα στην τаблицή δείχνουν την έκδοση του περιηγητή που υποστηρίζει πλήρως την @ διάταξη.

Chrome Edge Firefox Safari Opera
85 85 128 16.4 71

Σχετικές σελίδες

Εκμάθηση:CSS @property κανόνας