CSS Box Sizing
- Προηγούμενη Σελίδα CSS @property
- Επόμενη Σελίδα CSS Flexbox
CSS Box Sizing
Προτεινόμενα μαθήματα: box-sizing
CSS
Αιρεσιμότητα που επιτρέπει στο σύνολο του πλάτους και του ύψους του στοιχείου να περιλαμβάνει τα εσωτερικά περιθώρια (πληρώματα).
Αν δεν καθοριστεί η ιδιότητα CSS box-sizing
- Με την προεπιλογή, το πλάτος και το ύψος του στοιχείου υπολογίζονται ως εξής:
- width + padding + border = το πραγματικό πλάτος του στοιχείου
height + padding + border = το πραγματικό ύψος του στοιχείου
Αυτό σημαίνει: Όταν ρυθμίζετε το πλάτος/ύψος ενός στοιχείου, το στοιχείο συνήθως φαίνεται μεγαλύτερο από αυτό που ρυθμίσατε (π protože τα κατώφλια και τα εσωτερικά περιθώρια προστίθενται στο καθορισμένο πλάτος/ύψος του στοιχείου).
Αυτή η div είναι μικρότερη
Αυτή η div είναι μεγαλύτερη
(πλάτος επίσης 300px, ύψος 100px)。
Παράδειγμα
.div1 { width: 300px; height: 100px; border: 1px solid blue; } .div2 { width: 300px; height: 100px; padding: 50px; border: 1px solid red; }
box-sizing
Οι δύο <div> στοιχεία στις τελικές επιλογές εμφανίζονται με διαφορετικά μεγέθη (επειδή η div2 καθορίζει τα εσωτερικά περιθώρια):
Επιλύει αυτό το πρόβλημα.
box-sizing
Αν χρησιμοποιήσετε την ιδιότητα CSS box-sizing
Αιρεσιμότητα που επιτρέπει στο σύνολο του πλάτους και του ύψους του στοιχείου να περιλαμβάνει τα εσωτερικά περιθώρια και τα κατώφλια. box-sizing: border-box;
Αν ρυθμίσετε τα πλάτος και το ύψος ενός στοιχείου
Αυτό το παράδειγμα είναι το ίδιο με το προηγούμενο, και τα δύο <div> στοιχεία έχουν ρυθμίσει box-sizing: border-box;
:
Παράδειγμα
.div1 { width: 300px; height: 100px; border: 1px solid blue; box-sizing: border-box; } .div2 { width: 300px; height: 100px; padding: 50px; border: 1px solid red; box-sizing: border-box; }
Γιατί χρησιμοποιείται box-sizing: border-box;
με τόσο καλά αποτελέσματα, πολλοί προγραμματιστές επιθυμούν να λειτουργούν όλα τα στοιχεία στη σελίδα με αυτόν τον τρόπο.
Το παρακάτω κώδικας διασφαλίζει ότι όλα τα στοιχεία προσαρμόζονται με αυτόν τον πιο ενσυναίσθητο τρόπο. Πολλοί browser χρησιμοποιούν αυτή τη λειτουργία για πολλούς στοιχεία φόρμας box-sizing: border-box;
Παρόλο που όχι όλες - αυτό είναι το λόγο που input και textarea φαίνονται διαφορετικά όταν width: 100%;
Η εφαρμογή του σε όλα τα στοιχεία είναι ασφαλής και σοφής:
Παράδειγμα
* { box-sizing: border-box; }
Χαρακτηριστικό Box Sizing CSS
Χαρακτηριστικό | Περιγραφή |
---|---|
box-sizing | Ορίζει τον τρόπο υπολογισμού της πλάθους και της ύψους των στοιχείων: αν πρέπει να περιλαμβάνουν το εσωτερικό περιθώριο (padding) και τα πλαίσια. |
- Προηγούμενη Σελίδα CSS @property
- Επόμενη Σελίδα CSS Flexbox