Anker vertikal mit Bild innerhalb eines div ausrichten [duplicate]

Lesezeit: 3 Minuten

Benutzer-Avatar
Benutzer1683285

Ich habe viele, viele Methoden dafür ausprobiert, aber ich bekomme es einfach nicht hin. Ziemlich peinlich nach 3 Jahren Frontend-Arbeit – aber ich kann einfach keine Zeit mehr damit verschwenden.

Ich habe eine WordPress-Bildergalerie, ich muss die Bilder darin vertikal zentrieren. Ich habe versucht, Höhe, Zeilenhöhe und vertikale Ausrichtung: Mitte einzustellen – aber keine Freude.

Die Bilder werden vom Benutzer hinzugefügt – daher sind die Größen und die Gesamtzahl nicht statisch – daher sind Lösungen, die speziell auf eine einzelne Elementhöhe abzielen, nicht geeignet.

die URL:
http://www.europa-international.net/

<dl class="gallery-item ">
<dt class="gallery-icon">
    <a href="http://www.europa-international.net/our-videos/snapshot-1-02-01-2014-15-33/" title="Snapshot 1 (02-01-2014 15-33)"><img width="125" height="70" src="http://www.europa-international.net/wp-content/uploads/2013/07/Snapshot-1-02-01-2014-15-33.png" class="attachment-homepage-gallery" alt="Latest Promo Videos"></a>
</dt>
<dd class="wp-caption-text gallery-caption">Latest Promo Videos</dd>

#gallery-1 .gallery-icon {
    height: 104px;
    line-height: 104px;
}
#gallery-1 .gallery-icon a {
    vertical-align: middle;
}

und viele Variationen (mit Angabe der Ankerhöhe/Zeilenhöhe: 104px, Anzeige: Block, Vertikalausrichtung: Mitte), die auf dieser Website diskutiert werden.

edit: hier eine Geige posten:http://jsfiddle.net/DE4ph/2/

auch – die doppelte Antwortlösung ist nicht geeignet, da ich das Markup nicht (leicht) ändern kann, da es von WordPress generiert wird.

Alles, was Sie tun müssen, ist, dem übergeordneten Container eine Zeilenhöhe mit dem gleichen Wert wie dem Container selbst (z. B. 200 Pixel) zu geben und dann ein vertical-align:middle auf das Bild zu setzen.

.gallery-icon { 
    height: 200px; 
    line-height: 200px; 
}
.gallery-icon img { 
    vertical-align:middle; 
}

Sehen: http://jsfiddle.net/B78nD/

  • Entschuldigung, dass ich das versucht habe. Das unmittelbare Elternelement des Bildes ist ein Anker. Aber ich habe Ihre Methode am Elternteil des Ankers ausprobiert (Sie können einem Anker keine Zeilenhöhe/Höhe als Inline-Element geben). Ich habe auch versucht display:block mit line-height/height auf dem Anker mit vertikaler Ausrichtung auf dem Bild – auch keine Würfel. Das ist ein echter Twizzler.

    – Benutzer1683285

    6. Februar 2014 um 21:17 Uhr

  • Könnten Sie eine Geige mit Ihrem tatsächlichen HTML + CSS posten?

    – Leon

    7. Februar 2014 um 9:14 Uhr

Benutzer-Avatar
Daniel

Eine Möglichkeit von vielen ist es, den Container einzustellen div zu positionieren: relativ, dann zum hinzufügen Anker folgende Stilrichtungen:

Position: absolut; Anzeige: Inline-Block; links: 50 %; oben: 50px; Rand links: -62,5 px; Rand oben: -35px;

Eine weitere Option ist die Verwendung von vertical-align:

#gallery-1 .gallery-icon {
    height: 104px;
}
#gallery-1 .gallery-icon a {
     line-height: 104px;
}

#gallery-1 .gallery-icon a img {
     vertical-align: middle;
}

Übrigens, wenn sich das Bild selbst innerhalb des div befindet, das sich innerhalb des Ankers befindet – von dem, was ich weiß, ist es kein empfohlener Weg zu HTML. Sie können stattdessen die Anzeige des Bildes in Block oder Inline-Block ändern.

  • Ich weiß, worauf Sie damit hinauswollen – aber es gilt nur für das kleinste Bild, ich brauche sie alle, um sie für zukünftige Iterationen der Galerie vertikal zu positionieren – trotzdem danke.

    – Benutzer1683285

    5. Februar 2014 um 20:46 Uhr

  • Das Bild befindet sich nicht in einem div, das sich in einem Anker befindet – das Markup ist wie im Beispiel. Ihr Recht, Sie können kein Div in einem Anker haben. Außerdem habe ich versucht, das Bild in display:block & inline-block zu ändern

    – Benutzer1683285

    6. Februar 2014 um 21:20 Uhr


  • Hey, ich glaube ich hab’s jetzt, schau mal…

    – Daniel

    6. Februar 2014 um 21:35 Uhr

1370020cookie-checkAnker vertikal mit Bild innerhalb eines div ausrichten [duplicate]

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy