Κοινή χρήση τεχνολογίας

[Learning css2] διάταξη πλέγματος - το τμήμα υποσέλιδου της σελίδας διατηρείται στο κάτω μέρος της ιστοσελίδας

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Πώς να διατηρήσετε το τμήμα του υποσέλιδου της σελίδας στο υποσέλιδο (κάτω) της σελίδας όταν το ύψος του μεσαίου περιεχομένου δεν είναι αρκετά υψηλό ώστε το ύψος της οθόνης να υποστηρίζει τη σελίδα.

1. Αρχικά, κοιτάξτε το εφέ της οθόνης στην παραπάνω εικόνα.

2. Δώστε τον πηγαίο κώδικα

2.1, μέρος html

  1. <body>
  2. <header>头部</header>
  3. <main>主区域</main>
  4. <footer>底部</footer>
  5. </body>

2.2, μέρος css

  1. <style>
  2. html, body {
  3. margin: 0;
  4. padding: 0;
  5. width: 100%;
  6. height: 100%;
  7. }
  8. body {
  9. min-height: 100vh;
  10. display: grid;
  11. grid-template-rows: auto 1fr auto;
  12. }
  13. header {
  14. background: aquamarine;
  15. height: 40px;
  16. line-height: 40px;
  17. text-align: center;
  18. }
  19. footer {
  20. background: aquamarine;
  21. height: 50px;
  22. line-height: 50px;
  23. text-align: center;
  24. }
  25. main {
  26. margin: 0 auto;
  27. background: aqua;
  28. width: 80%;
  29. }
  30. </style>

3. Όλοι οι κωδικοί

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>gridbox布局</title>
  6. <style>
  7. html, body {
  8. margin: 0;
  9. padding: 0;
  10. width: 100%;
  11. height: 100%;
  12. }
  13. body {
  14. min-height: 100vh;
  15. display: grid;
  16. grid-template-rows: auto 1fr auto;
  17. }
  18. header {
  19. background: aquamarine;
  20. height: 40px;
  21. line-height: 40px;
  22. text-align: center;
  23. }
  24. footer {
  25. background: aquamarine;
  26. height: 50px;
  27. line-height: 50px;
  28. text-align: center;
  29. }
  30. main {
  31. margin: 0 auto;
  32. background: aqua;
  33. width: 80%;
  34. }
  35. </style>
  36. </head>
  37. <body>
  38. <header>头部</header>
  39. <main>主区域</main>
  40. <footer>底部</footer>
  41. </body>
  42. </html>

4. Αρχή

1.Δεσμευμένοςmin-height: 100vhαυτή τη μέθοδο, αλλά στη συνέχεια χρησιμοποιούμεgrid-template-rowsΈλα διάστημα.

2. Το κόλπο με αυτήν τη μέθοδο είναι να χρησιμοποιήσετε ειδικά κελιά πλέγματοςfr 。 fr Αντιπροσωπεύει "αντίγραφα" και η χρήση του απαιτεί από το πρόγραμμα περιήγησης να υπολογίσει τα διαθέσιμα "αντίγραφα" του υπολειπόμενου χώρου για να εκχωρήσει σε αυτήν τη στήλη ή τη γραμμή. Σε αυτή την περίπτωση, γεμίζει όλο τον διαθέσιμο χώρο μεταξύ της κεφαλίδας και του υποσέλιδου, γεγονός που λύνει και το «ψεγάδι» της προσέγγισης flexbox, όπου η κύρια περιοχή δεν μπορεί να γεμίσει αυτόματα.