suchen
HeimWeb-FrontendCSS-TutorialGruppierung der Auswahllistenelemente zusammen mit CSS Grid

Grouping Selection List Items Together With CSS Grid

gruppieren Sie die ausgewählten Listenelemente geschickt über CSS Grid, um die Benutzererfahrung zu verbessern! Die ausgewählte Elementgruppierung ist eine gemeinsame Designstrategie, mit der Benutzer ausgewählte und nicht ausgewählte Elemente schnell unterscheiden können. In der To-Do-Liste werden beispielsweise die abgeschlossenen Elemente nach oben bewegen, sodass Benutzer sich auf die verbleibenden Aufgaben konzentrieren können.

Wir werden eine ähnliche Gruppierungs -Benutzeroberfläche entwerfen. Im Gegensatz zur einfachen Umlagerung ausgewählter Elemente verwenden wir das CSS -Netz, um die ausgewählten Elemente horizontal zu lagern, um zwischen ausgewählten und nicht ausgewählten Elementen weiter zu unterscheiden.

Wir werden zwei Methoden untersuchen. Einer verwendet auto-fill, was für Situationen geeignet ist, in denen das ausgewählte Element die Grenze des Gitterbehälters nicht überschreitet, was ein stabiles Layout sicherstellt. span

Der HTML -Code der beiden Methoden ist gleich:

Der Code

    <li> <li>
besteht aus einer ungeordneten Liste (

). Wir müssen die Elemente nicht zusätzlich einwickeln, da das CSS -Netzattribut das Projektlayout bestimmt. Beachten Sie, dass ich implizite <ul></ul> Elemente zum Wickeln verwende und zusätzliche Verpackungen vermeiden kann. Explizite Tags werden jedoch normalerweise stärker von assistiven Technologien unterstützt. <label></label>

Methode 1: Verwenden Sie auto-fill

ul {
  width: 250px;
  display: grid;
  gap: 14px 10px;
  grid-template-columns: repeat(auto-fill, 40px);
  justify-content: center;
  /* ...其他样式... */
}
Das Element

, das das Listenelement enthält, wird auf <ul></ul> gesetzt, um es zu einem Gitterbehälter zu machen. Es legt eine Lücke von 14px und 10px zwischen Gitterzeilen und Spalten. Der Netzinhalt ist horizontal auf das Zentrum ausgerichtet. Die Eigenschaft display: grid gibt die Größe der Spalten im Raster an. Im Anfangszustand befinden sich alle Elemente in einer einzigen Spalte. Sobald die Elemente ausgewählt sind, wechseln sie in die erste Zeile, wobei jedes ausgewählte Element eine Spalte besetzt. Der Schlüssel liegt im Wert. grid-template-columns Der Wert auto-fill

wird für die Anzahl der Wiederholungen der

-Funktion verwendet. Es stellt sicher, dass die Spalten wiederholt werden. Jede Spalte hat die in auto-fill (40px) angegebene Spurgröße und kann sich an die Grenzen des Gitterbehälters anpassen. repeat() repeat() Um sicherzustellen, dass der anfängliche Status des Listelements eine einzelne Spalte ist:

Wenn das Element ausgewählt ist (das Element
li {
  width: inherit;
  grid-column: 1;
  /* 等同于:grid-column-start: 1; grid-column-end: auto; */
  /* ...其他样式... */
}
ist ausgewählt), verwenden Sie den

-Alektor: <input> :has(:checked)

Dies führt dazu, dass die ausgewählten Elemente ganz oben auf der Liste gruppiert und horizontal angeordnet werden.
li {
  width: inherit;
  grid-column: 1;
  /* ...其他样式... */
  &:has(:checked) {
    grid-area: 1;
    /* 等同于:grid-row-start: 1; grid-column-start: auto; grid-row-end: auto; grid-column-end: auto; */
    width: 40px;
    /* ...其他样式... */
  }
  /* ...其他样式... */
}

Methode 2: Verwenden Sie das Schlüsselwort

span Diese Methode erfordert nicht das Attribut

. Der neue

-Stil lautet wie folgt: grid-template-columns <ul></ul>

ul {
  width: 250px;
  display: grid;
  gap: 14px 10px;
  justify-content: center;
  justify-items: center;
  /* ...其他样式... */
}
hilft bei der Ausrichtung der Rasterelemente. Aktualisiert

Stil: justify-items: center <li>

Jedes Element wird in der ersten Spalte platziert, aber jetzt umfassen sie auch sechs Spaltenspuren (weil es sechs Elemente gibt). Dies stellt sicher, dass wenn mehrere Spalten im Raster angezeigt werden, nicht ausgewählte Elemente nach dem ausgewählten Element unterhalb des ausgewählten Elements einzeln bleiben - die nicht ausgewählten Elemente umfassen jetzt mehrere Spaltenspuren.
li {
  width: inherit;
  grid-column: 1 / span 6;
  /* 等同于:grid-column-start: 1; grid-column-end: span 6; */
  /* ...其他样式... */
}
Die Erklärung hält die Gegenstände zentriert.

justify-items: center

Die Breite des ausgewählten Elements wurde erhöht, um das Layout der ausgewählten Benutzeroberfläche anzuzeigen, wenn der Artikel überläuft, den der Container ausgewählt ist.
li {
  width: inherit;
  grid-column: 1 / span 6;
  /* ...其他样式... */
  &:has(:checked) {
    grid-area: 1;
    width: 120px;
    /* ...其他样式... */
  }
  /* ...其他样式... */
}

Wählen Sie die Bestellung

aus

Die Reihenfolge ausgewählter und nicht ausgewählter Elemente bleibt mit der Quellreihenfolge übereinstimmend. Wenn die Bildschirmreihenfolge für die Auswahl der Benutzer übereinstimmt, wird der inkrementierte Bestellwert dynamisch zugewiesen, wenn das Element ausgewählt ist.


    <li> <li>

Zusammenfassung

CSS -Gitter macht beide Methoden ohne viel Konfiguration sehr flexibel. Durch das Platzieren von Elementen entweder auf Achse (Zeile oder Spalte) mit auto-fill können Sie ausgewählte Elemente problemlos in Gitterbehälter gruppieren, ohne das Layout nicht ausgewählter Elemente im selben Container zu beeinflussen, solange die ausgewählten Elemente den Container nicht überfüllen.

Wenn das Element den Container überläuft, hilft die Verwendung der span -Methode, das Layout unabhängig von der Länge des ausgewählten Elements auf der angegebenen Achse beizubehalten. Einige Designalternativen zur Benutzeroberfläche umfassen die Gruppierung ausgewählter Elemente bis zum Ende einer Liste oder das Austausch horizontaler und vertikaler Strukturen.

Das obige ist der detaillierte Inhalt vonGruppierung der Auswahllistenelemente zusammen mit CSS Grid. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Zwei Bilder und eine API: alles, was wir für die Wiederbelebung von Produkten brauchenZwei Bilder und eine API: alles, was wir für die Wiederbelebung von Produkten brauchenApr 15, 2025 am 11:27 AM

Ich habe kürzlich eine Lösung gefunden, um die Farbe eines Produktbildes dynamisch zu aktualisieren. Mit nur einem Produkt können wir es auf unterschiedliche Weise zeigen, um zu zeigen

Wöchentliche Plattformnachrichten: Auswirkungen von Code von Drittanbietern, passive gemischte Inhalte, Länder mit den langsamsten VerbindungenWöchentliche Plattformnachrichten: Auswirkungen von Code von Drittanbietern, passive gemischte Inhalte, Länder mit den langsamsten VerbindungenApr 15, 2025 am 11:19 AM

In der Roundup in dieser Woche wird Lighthouse beleuchtet, die Drittanbieter-Skripte, unsichere Ressourcen auf sicheren Websites und viele Länderverbindungsgeschwindigkeiten blockiert werden

Optionen zum Hosting Ihrer eigenen nicht-javaScript-basierten AnalysenOptionen zum Hosting Ihrer eigenen nicht-javaScript-basierten AnalysenApr 15, 2025 am 11:09 AM

Es gibt eine Menge Analyseplattformen, mit denen Sie Besucher- und Nutzungsdaten auf Ihren Websites verfolgen können. Vielleicht vor allem Google Analytics, das weit verbreitet ist

Es ist alles in der KopfEs ist alles in der KopfApr 15, 2025 am 11:01 AM

Der Dokumentkopf ist vielleicht nicht der glamouröseste Teil einer Website, aber was darauf einfließt

Was ist Super () in JavaScript?Was ist Super () in JavaScript?Apr 15, 2025 am 10:59 AM

Was passiert, wenn Sie ein JavaScript sehen, das Super () aufruft. In einer Kinderklasse verwenden Sie Super (), um den Konstruktor und Super des Elternteils anzurufen. zugreifen

Vergleich der verschiedenen Arten von nativen JavaScript -PopupsVergleich der verschiedenen Arten von nativen JavaScript -PopupsApr 15, 2025 am 10:48 AM

JavaScript verfügt über eine Vielzahl von integrierten Popup-APIs, die eine spezielle Benutzeroberfläche für die Benutzerinteraktion anzeigen. Berühmt:

Warum sind zugängliche Websites so schwer zu erstellen?Warum sind zugängliche Websites so schwer zu erstellen?Apr 15, 2025 am 10:45 AM

Ich habe neulich mit einigen Front-End-Leuten darüber gesprochen, warum so viele Unternehmen zugängliche Websites erstellen. Warum sind Websites so schwer zugänglich?

Das `versteckte Attribut ist sichtlich schwachDas `versteckte Attribut ist sichtlich schwachApr 15, 2025 am 10:43 AM

Es gibt ein HTML -Attribut, das genau das tut, was Sie denken, dass es tun sollte:

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

SecLists

SecLists

SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

SAP NetWeaver Server-Adapter für Eclipse

SAP NetWeaver Server-Adapter für Eclipse

Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.