michaah: grid, zwei Spalten, links Text, rechts bilder, scrollbalken verhindern

Hi,

in einen Zweispalten-grid-design soll der Text in den linken Zellen in die Bilder der rechten Zellen überfließen:

{ width: 100%;
	display:grid;
	grid-template-columns: 1fr 20em; /* <-- das soll möglichst so bleiben;
bie breiter werdendem Viewport sollen die Bilder eben (zunächst) nicht 
skalieren, aber der Text immer mehr platz bekommen */
  }

Gegenwärtig ist es so, dass der Text die linken Zellen auf die notwendige Breite aufdrückt (wie das Text in fr-Zellen, bzw. Spalten nunmal macht, der Inhalt wird dadurch breiter als den Viewport) und die Bilder nach rechts aus der Zelle drückt.

Wie muss ich die Rahmenbedingungen setzen, damit das wie gewünscht klappt. (Ich hatte das schonmal hinbekommen, mein Beispiel aber gelöscht, was mich jetzt etwas nevt; ich hoffe meine spärlichen Angaben reichen aus)

  1. Hallo michaah,

    suchst Du so was?

    Das einzig Spezielle war eigentlich ein max-width: 100% für das img Element.

    Das h2 möchte vermutlich lieber ein h1 sein, aber so ein Artikel steht ja zumeist nicht allein auf der Seite, und der Rest der Seite steht nicht im Fiddle.

    Rolf

    --
    sumpsi - posui - obstruxi
    1. Hallo michaah,

      suchst Du so was?

      Nein. Der Text in deinen Beispiel bricht um. Das ist ja easy-peasy ;-)

      Ich möchte dass meine (erläuternden) Einzeilertexte in den linken Zellen bei engem Viewport (zunächst) in dir jeweils rechten Zellen überfließt. Je breiter dann der Viewport aufgezogen wird (bzw je breiter die devices werden) möchte ich das in die Breite ziehen, somit den Text quasi aus dem Bild herausziehen.

      Ich hatte das aber wohl doch etwas anders gelöst als ich mich zunächst erinnerte, habe dann in den Tiefen der Verzeichnisse doch noch ein abgespeichertes Zwischenergebnis gefunden. Dort wurde die Gritbreite so berechnet:

      @media (min-width: 30em) 
      {
      main { display: grid;
       grid:	  "header header" 	min-content
      			    "bli bli"
      			    "details details"
      			    "bla blubb"
      			    "bla blubb"
      	 	 	    / calc((130% - 30em) + 5em) 1fr;
       }  
      ...
      }
      

      Damit funktioniert die Überlappung ganz gut, aber offen gestanden versteh ich nicht (mehr) warum ...

      1. Hallo michaah,

        okay. Also z-index setzen damit der Text über dem Bild ist, und etwas Spielerei mit den Grid-Bereichen.

        Damit Text beim Bild bleibt, einen Container um die Zeilen. Und der Container ist das Grid. Ein einziges Grid mit Auto-Placement würde Dir die Bilder unter den Text stellen (es sei denn, ich bin mal wieder zu dumm für Grid).

        So was?

        Rolf

        --
        sumpsi - posui - obstruxi
        1. okay ... und etwas Spielerei mit den Grid-Bereichen.

          jahhhhhh ....hmmmmmm kopfkratz

          Damit Text beim Bild bleibt, einen Container um die Zeilen. Und der Container ist das Grid. Ein einziges Grid mit Auto-Placement würde Dir die Bilder unter den Text stellen (es sei denn, ich bin mal wieder zu dumm für Grid).

          So was?

          Rolf

          Es tut in jedem Fall was es für mich tuen sollte. Aber das figure Element will verstanden sein ... das ist mir bislang noch nicht in ausreichendem Maß gelungen.

          Danke.

          1. Hallo michaah,

            wenn Du das figure-Element nicht verstehst, dann kann das daran liegen, dass es daran nicht viel zu verstehen gibt und Du tiefen Sinn suchst, wo keiner ist.

            <figure> ist eins der Elemente aus dem semantischen Web. D.h. man soll das Markup seiner Seiten so gestalten, dass die HTML Elemente aussagen, welche Art von Inhalt hier vorliegt. Zu Beginn waren HTML Elemente eher auf „wie soll das aussehen“ gestrickt, denk an <i> für italic, <u> für underline. Für's Aussehen ist heute CSS da. Das HTML soll vor allem aussagen: was bedeutet das.

            <figure> steht für Bilder, Illustrationen, Diagramme, Codeschnipsel etc, auf die im Hauptdokument Bezug genommen wird, die man aber auch in einen anderen Teil des Dokuments oder in einen Anhang verlegen könnte. Zu einer figure gehört normalerweise auch einen Titel, der steckt in <figcaption>. <figcaption> muss erstes oder letztes Element in der <figure> sein.

            Mehr gibt's da nicht zu verstehen. Zugegeben, Browser bringen ein paar Default-Formatierungen für figures mit (Abstände und Ränder), die Du natürlich nach Wunsch anpassen kannst.

            Rolf

            --
            sumpsi - posui - obstruxi
            1. @@Rolf B

              <figure> ist eins der Elemente aus dem semantischen Web.

              Nein, überhaupt nicht.

              Das semantische Web ist was völlig anderes und hat nichts mit Elementtypen zu tun.

              😷 LLAP

              --
              Wenn der Faschismus wiederkehrt, wird er nicht sagen: „Hallo, ich bin der Faschismus.“ Er wird sagen: „Hört auf zu zählen! Ich habe gewonnen!“
              1. Hallo Gunnar,

                okay, wieder was gelernt.

                Gemeint habe ich: Es ist ein Element, das mit HTML 5 eingeführt wurde, um Semantik, also Bedeutung, ins Markup zu bringen.

                Dass "semantisches Web" eine andere Semantik einführt, hatte ich nicht unterschieden.

                Rolf

                --
                sumpsi - posui - obstruxi
                1. @@Rolf B

                  Dass "semantisches Web" eine andere Semantik einführt, hatte ich nicht unterschieden.

                  Und ich rede mir da seit Jahren den Mund fusslig:

                  😷 LLAP

                  --
                  Wenn der Faschismus wiederkehrt, wird er nicht sagen: „Hallo, ich bin der Faschismus.“ Er wird sagen: „Hört auf zu zählen! Ich habe gewonnen!“
  2. @@michaah

    in einen Zweispalten-grid-design soll der Text in den linken Zellen in die Bilder der rechten Zellen überfließen:

    Grid-Zellen können sich überlappen.

    In meinem Beispiel geht main über die volle Breite; img nur über einen Teil davon.

    😷 LLAP

    --
    Wenn der Faschismus wiederkehrt, wird er nicht sagen: „Hallo, ich bin der Faschismus.“ Er wird sagen: „Hört auf zu zählen! Ich habe gewonnen!“
    1. Hallo Gunnar,

      okay, ich hatte es mit Nummern gemacht.

      Aber was ist der Unterschied zwischen full-main und main-end? Ich kannte bisher nur letzteres.

      Rolf

      --
      sumpsi - posui - obstruxi
      1. @@Rolf B

        Hallo Gunnar,

        okay, ich hatte es mit Nummern gemacht.

        Und media query, den man nicht braucht.

        Aber was ist der Unterschied zwischen full-main und main-end?

        Das eine ist falsch; das andere richtig.

        Im Pen berichtigt.

        😷 LLAP

        --
        Wenn der Faschismus wiederkehrt, wird er nicht sagen: „Hallo, ich bin der Faschismus.“ Er wird sagen: „Hört auf zu zählen! Ich habe gewonnen!“
    2. @@michaah

      in einen Zweispalten-grid-design soll der Text in den linken Zellen in die Bilder der rechten Zellen überfließen:

      Grid-Zellen können sich überlappen.

      In meinem Beispiel geht main über die volle Breite; img nur über einen Teil davon.

      😷 LLAP

      Das schaut auch nachvollziehbar aus. Werde ich mir morgen genau anschauen.

      Danke.

  3. @@michaah

    in einen Zweispalten-grid-design soll der Text in den linken Zellen in die Bilder der rechten Zellen überfließen:

    Bist du sicher, dass das keine Hintergrundbilder sind?

    😷 LLAP

    --
    Wenn der Faschismus wiederkehrt, wird er nicht sagen: „Hallo, ich bin der Faschismus.“ Er wird sagen: „Hört auf zu zählen! Ich habe gewonnen!“
    1. Hi

      Bist du sicher, dass das keine Hintergrundbilder sind?

      Es sind definitiv keine Hintergründe sondern Inhalte. Das ist sicher.

      Technisch gesehen ist das für mich allerdings das am einfachsten nachvollziehbare Beispiel von euch Beiden. Da fällt es mir richtig schwer einen Inhalt nicht als HG zu behandeln.

      Danke dafür ;-) .