Hallo zusammen, ich würde gerne ein paar Bilder als Teaser für Artikel, Kategorien usw. auf der Startseite als Mosaik darstellen, dass sich je nach Auflösung verschiebt. Also z.B. 3-4 Bilder nebeneinander auf Desktops, aber nur 2 auf Tablets, auf Smartphones nur 1 Spalte. Ich möchte Bordmittel nutzen, kein Java usw. Hier habe ich einen Code nur mit HTML und CSS gefunden: (Link nur für registrierte Nutzer sichtbar.) Leider funktioniert das ganze nicht, hab das CSS als eigenes CSS hinzugefügt und den Code in Index-Mitte gepackt. Die Platzhalter werden nur untereinander dargestellt und reagieren nicht beim Mouseover - als würde das CSS garnicht ausgeführt. Ich füge den Code mal ein, vll hat jemand einen Tipp... gerne auch eine ganz andere Lösung für die Darstellung. Vielen Dank! HTML: <div class="container"> <div class="mosaic"> <figure class="tile"> <a href="#"> <img src="http://www.placehold.it/300x300/abc/fff?text=Image with Link and Caption"> <div class="overlay"> <figcaption>This is the caption</figcaption> </div> </a> </figure> <figure class="tile"> <a href="#"> <img src="http://www.placehold.it/300x300/acb/fff?text=Image with Link"> <div class="overlay"></div> </a> </figure> <figure class="tile"> <img src="http://www.placehold.it/300x100/bac/fff?text=Image with Caption"> <div class="overlay"><figcaption>This is the caption</figcaption></div> </figure> <figure class="tile"> <img src="http://www.placehold.it/300x250/bca/fff?text=Image"> <div class="overlay"></div> </figure> <figure class="tile"> <div class="html-tile"> <h5>This is a test of the HTML Tile</h5> <p>It should interact just like other image tiles do.</p> <a href="#" class="btn btn-default">Button</a> </div> </figure> <figure class="tile"> <a href="#"> <img src="http://www.placehold.it/300x400/cab/fff?text=Image with Link"> <div class="overlay"></div> </a> </figure> <figure class="tile"> <a href="#"> <img src="http://www.placehold.it/300x300/cba/fff?text=Image with Link"> <div class="overlay"></div> </a> </figure> <figure class="tile"> <img src="http://www.placehold.it/400x250/bcd/fff?text=Image with Caption"> <div class="overlay"><figcaption>This is the caption</figcaption></div> </figure> <figure class="tile"> <div class="html-tile"> <div class="well"> <h5>This is a test of the HTML Tile Using a Well</h5> <p>It should interact just like other image tiles do.</p> <a href="#" class="btn btn-primary">Test Button</a> <div class="overlay"><figcaption>This is the caption</figcaption></div> </div> </div> </figure> </div> </div> Code: .mosaic { -webkit-column-count: 4; -webkit-column-gap: 10px; -moz-column-count: 4; -moz-column-gap: 10px; column-count: 1; column-gap: 10px; @media screen and (min-width: 480px) { column-count: 2; } @media screen and (min-width: 768px) { column-count: 3; } @media screen and (min-width: 992px) { column-count: 4; } .tile { position: relative; width: 100%; margin-bottom: 10px; display: inline-block; > img, > a, > a > img, > .html-tile { display: block; width: 100%; height: auto; } .overlay { position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; opacity: 0; transition: .5s ease; background-color: rgba(#63a3bf, .5); @media (max-width: 400px) { opacity: 1; height: auto; background-color: transparent; } figcaption { position: absolute; text-transform: uppercase; text-align: center; vertical-align: bottom; left: 50%; transform: translatex(-50%); bottom: 10px; font-size: 1em; line-height: 1.1em; font-weight: 600; color: #222; @media (max-width: 400px) { padding: 20px 10px; background: rgba(#63a3bf, .5); width: 100%; bottom: 0; } } } &:hover .overlay { opacity: 1; } } }
Der Beitrag ist schon paar Tage alt, aber ein sehr interessantes Thema. Denn mehrere gleichgroße Bilder lassen sich problemlos lösen mit Bordmitteln, aber z.B. 9 ungleiche Größen und mehr gut zu gestalten, da ist der oben genannte Link besser. Nur das scss funktioniert nicht. Habe deshalb den mal auf css umgeschrieben. Den .zip entpacken und die mosaic-test.html im Browser öffnen.
Ich hab das mal ausprobiert. Den html-Code von oben in meinen Quelltext kopiert und Dein CSS Mosaik meinem CSS hinzugefügt. (Was mach ich mit der Bootsrap.min?) Soweit stimmt die Ausgabe, ist allerding ein bisschen nach rechts verschoben. Beim Austausch von einem der Bilder erscheint wieder alles untereinander...
Die ist im Gambio-Shop enthalten, war nur für den Test außerhalb des Shop notwendig. Beim Einbau in den Shop sollte das css noch geändert werde, sonst gibts arge Probleme. angepasstes Css (in meinem Testshop getestet):
Stimmt. Meine horizontale Kategorieleiste hat es zerschossen . Danke, ich versuch es später auch nochmal in meinem Testshop
Super, vielen Dank!! Ich werde mal damit ein bisschen rumspielen, ob ich das optisch so wie ich es mir vorstelle hinbekomme... mit etwas weniger Bildern und immer im ganzen rechteckig. Aber erstmal sieht das schon super aus! Nur wie das im Shop integriert werden sollte ist mir noch nicht ganz klar... wie ich das CSS einbinde (nutze sonst nur "eigenes CSS" im Styleedit).
Das geht auch über eigenes css . Bei mir hat sich aber wieder alles verschoben, nachdem ich das erste Bild gegen mein eigenes getauscht hab
das css kannst du auch so komplett unter eigenes css einfügen oder als Datei unter honeygrid/usermod/css/ das Mosaic im Content-Manager z.B. als neuen Content unter Index. Aber nur den Teil ab : <div class="mosaic">...... bis dem dazugehörigen </div> HTML: <div class="mosaic"> <figure class="tile"> <a href="#"> <img class="img-responsive img-rounded" src="img/image8.jpg">..... . . . . ..... <div class="html-tile"> <div class="well" style="background-color: #cfd5e4;color: #122551;"> <h5> This is a test of the HTML Tile Using a Well</h5> <p>It should interact just like other image tiles do.</p> <a href="#" class="btn btn-primary">Test Button</a> </div> </div> </figure> </div>
Kann ich nicht bestätigen, habe mal wahllos Bilder eingefügt. Die css Anweisung column-count: 1 oder 2 oder 3 gibt die Spalten an die erzeugt werden, ab der angegebenen min-width, experimentiere da mal. Kannst auch dem container style noch eine max-width: 600px verpassen.
Super, es hat funktioniert! Leider macht mir der Editor im Content Manager den Code immer kaputt, wenn ich nochmal reingehe um etwas zu ändern... sieht dann auf einmal so aus: HTML: <div class="mosaic"> <figure class="tile"><a href="#"><img class="img-responsive thumbnail" src="images/img/image1.jpg" /> </a> <div class="overlay"> </div> <figcaption><a href="#">Test 1</a></figcaption> <a href="#"> </a></figure> </div> ... Warum passiert das...?
Der Editor hat da so seine logische Sortier-Macke. Du kommst am besten so, speichere die Datei auf dem Rechner z.B. als testmosaic.html . Dann im Content Manager -Datei hochladen (von Ihrem lokalen System), Content aktualisieren, danach -Datei wählen: testmosaic.html. Speichern. Wenn da eine Datei geladen ist werden die Eingaben im Editor ignoriert.