CSS Grid Webseite funktioniert nicht?

2 Antworten

Zuerst solltest du dein HTML in Ordnung bringen.

1) Das nav-Element beschreibt konkreten Inhalt im Dokument und gehört daher wenn nur in den body. Wieso du damit scheinbar die kompletten Seite umspannen möchtest, ist für mich unklar. Es wäre so jedenfalls auch missdeutend. Nimm es einfach komplett raus.

2) Das title-Element beschreibt den Dokumenttitel. Insofern ist es eine Angabe, die ausschließlich für den head-Bereich bestimmt ist. Der title-Tag aus dem body kommt also raus. Wenn du eine Überschrift darstellen wolltest, verwende den h1-Tag.

3) Ein h3-Element ist ein Blockelement, welches nicht in ein u-Element passt (das erlaubt nur phrasing content, wie span, b, i, strong, ...). Entweder du schreibst es zumindest andersherum:

<h3><u>Ich bin:</u></h3>

oder wesentlich besser: Du unterstreichst den Text via CSS. Immerhin hast du ihm bereits mit dem h3 eine Bedeutung zugeordnet, die wohl kaum weiter hervorgehoben werden müsste.

<h3 class="underlined">Ich bin:</h3>

CSS:

.underlined { text-decoration: underline }

4) Es ist kein Fehler, aber dennoch verwunderlich, dass du den anschließenden Paragraph nicht zu einer Auflistung (ul) umformst. Immerhin listest du ja auch Daten auf, die zudem logisch zusammenhängen.

5) Dein öffnender a-Tag am Ende des Dokuments ist unvollständig.

<a href="some target URL ...">----</a>

6) Du schließt zuletzt ein div-Element, zu dem kein öffnender Tag existiert.

7) Abschließend würde ich zu einem einheitlichen Stil raten. Das verbessert die Lesbarkeit. Alle Attribute werden mit Anführungszeichen umklammert.

<tagname attribute="value">...</tagname>

Zu deinem Grid: Wenn du deinen Selektor .container so umformst:

.container {
  display: grid;
  grid-template-areas:
    'h h h h h h'
    'c c c c c s'
    'c c c c c s'
    'c c c c c s'
    'c c c c c s'
    'f f f f f s';
}

werden die Elemente so angeordnet, wie du es skizziert hast.

du nutz das ja komplett falsch hier mal ein beispiel

https://jsfiddle.net/sda6bqm8/

ich frag mich echt warum du da 5 mal h hast etc

irgendwie tust du im kopf was komplett anderes als wofür grid gedacht wurde .

fang mal mit einfachen beispielen an mit rahmen und dann erweiter das zu dem was du da willst.

so wird man nciht schlau draus was du überhaupt willst .

nicht das du grid nutzt und vergisst CSS zu lernen . den das meiste muss man wirklich nciht mit grid machen , das ist ja so als wärst du im 19xx jahrtausend style nur das du heute nicht tables nimmst . dafür grid aber genauso falsch.

elomenatyStinkt 
Fragesteller
 21.11.2021, 23:31

Ich möchte, dass die Elemente untereinander angezeigt werden, nicht nebeneinander.

0
TechPech1984  22.11.2021, 10:33
@elomenatyStinkt

warum machst du dann überhaupt ein grid ? blockelemente werden doch eh untereinenader in zeilen gezeigt. ich glaub du hast wirklich die basics von einembrowser und der anzeige nicht verstanden .

du brauchst gar kein grid .

lern erstmal ganz normal HTML und CSS und wenn das mit nromalen mitteln nicht geht, dann kannst du ein GRID nehmen . den das ist für spalten etc angedacht , nicht weils schick ist

0
regex9  22.11.2021, 01:41

Die Anzahl der Zelltoken bestimmt die Anzahl an Spalten.

2