Ich arbeite derzeit an einer mobilen Zielseite für ein Unternehmen. Es ist ein wirklich einfaches Layout, aber unter der Kopfzeile befindet sich ein Bild eines Produkts, das immer 100% breit ist (das Design zeigt, dass es immer von Kante zu Kante geht). Abhängig von der Breite des Bildschirms wird die Höhe des Bildes offensichtlich entsprechend angepasst. Ich habe dies ursprünglich mit einem IMG (mit einer CSS-Breite von 100%) gemacht und es hat großartig funktioniert, aber ich habe festgestellt, dass ich Medienabfragen verwenden möchte, um verschiedene Bilder mit unterschiedlichen Auflösungen bereitzustellen - sagen wir ein kleines, mittleres und Zum Beispiel eine große Version desselben Bildes. Ich weiß, dass Sie das img src nicht mit CSS ändern können, daher dachte ich, ich sollte einen CSS-Hintergrund für das Bild verwenden, im Gegensatz zu einem img-Tag im HTML.
Ich kann nicht scheinen, dass dies richtig funktioniert, da das Div mit dem Hintergrundbild sowohl eine Breite als auch eine Höhe benötigt, um den Hintergrund anzuzeigen. Ich kann natürlich 'width: 100%' verwenden, aber was verwende ich für die Höhe? Ich kann eine zufällige feste Höhe wie 150px setzen und dann die oberen 150px des Bildes sehen, aber dies ist nicht die Lösung, da es keine feste Höhe gibt. Ich hatte ein Spiel und fand heraus, dass ich, sobald es eine Höhe gibt (getestet mit 150px), 'Hintergrundgröße: 100%' verwenden kann, um das Bild korrekt in das Div zu passen. Ich kann das neuere CSS3 für dieses Projekt verwenden, da es ausschließlich für Mobilgeräte gedacht ist.
Ich habe unten ein grobes Beispiel hinzugefügt. Bitte entschuldigen Sie die Inline-Stile, aber ich wollte ein einfaches Beispiel geben, um meine Frage etwas klarer zu machen.
<div id="image-container">
<div id="image" style="background: url(image.jpg) no-repeat; width: 100%; height: 150px; background-size: 100%;"></div>
</div>
Muss ich dem Container div möglicherweise eine prozentuale Höhe geben, die auf der gesamten Seite basiert, oder sehe ich das völlig falsch?
Denken Sie auch, dass CSS-Hintergründe der beste Weg sind, dies zu tun? Möglicherweise gibt es eine Technik, die je nach Geräte- / Bildschirmbreite unterschiedliche IMG-Tags bereitstellt. Die allgemeine Idee ist, dass die Zielseitenvorlage mehrfach mit unterschiedlichen Produktbildern verwendet wird, daher muss ich sicherstellen, dass ich dies auf die bestmögliche Weise entwickle.
Ich entschuldige mich dafür, dass dies ein wenig langwierig ist, aber ich gehe von diesem Projekt zum nächsten hin und her, also möchte ich dieses kleine Ding erledigen. Vielen Dank im Voraus für Ihre Zeit, es wird sehr geschätzt. Grüße