Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
Den Aufwand siehst du nur, weil dir Techniken beschrieben werden welche du schlichtweg nicht begreifst. Was möchtest du denn eigentlich? Du suchst offenbar den richtigen und besten Weg. Den finden wir sicher.Aber nun gut... wie ihr selbst seht, sind eure Lösungen optisch und "Aufwandstechnisch" meinen unterlegen!
Da beginnt schon das Problem. Es kommt darauf an um was für Bilder es sich handelt. Sind es inhaltlich relevante Bilder, so sind die von dir gesuchten HTML-Elemente unter Anderem figure, evtl. figcapture und img. Wenn es sich nur um Bilder handelt, die im Rahmen des Designs deine Seite optisch aufwerten sollen, so bist du schon beim img-Tag falsch. Was du dann suchst ist ein Element ohne semantische Bedeutung, welchem du das entsprechende Bild als Hintergrund zuweist. Das einzige Element ohne großartige semantische Bewandnis ist der div-Container.
Die Bilder deckend zu positionieren ist dank Techniken wie overflow oder background-size ebenso einfach. Du musst bei unterschiedlichen Formaten nur darauf achten dich immer an der längeren Kante (Höhe oder Breite) zu orientieren. In letzter Instanz könntest du auch in Erwägung ziehen die Bilder serverseitig (PHP) oder clientseitig (Javascript) zu skalieren und zuzuschneiden, dafür gibt es aber keinen Grund.
100vw / 16 * 9 = 56,25
100vw / 15 * 10 = 66,67
<div id="wrapper">
<div class="big"></div>
<div class="small"></div>
<div class="small"></div>
<div class="small"></div>
<div class="small"></div>
<div class="middle"></div>
<div class="small"></div>
</div>
* {
margin: 0;
padding: 0;
}
#wrapper {
width: 100vw;
height: 30vw;
background: #ffb1e8;
}
#wrapper div {
box-sizing: border-box;
border: 1px solid black;
}
.big {
width: calc(100vw / 2);
height: calc(30vw);
float: left;
}
.small {
width: calc(100vw / 6);
height: calc(30vw / 3);
float: left;
}
.middle {
width: calc(100vw / 3);
height: calc(30vw / 1.5);
float: right;
}
#wrapper div {
box-sizing: border-box;
background-repeat: none;
background-size: cover;
}
Border: 0 <input type="range" min="0" max="5" step="0.5" id="gap"> 5
$("#gap").change(function(){
var wrapperViewportWidth = Math.round($("#wrapper").width() / $(window).width() * 100);
var wrapperViewportHeight = Math.round($("#wrapper").height() / $(window).width() * 100);
var margin = parseFloat(this.value);
$("#wrapper div").css("margin", margin);
$(".big").css({
"width": "calc("+ wrapperViewportWidth +"vw / 2 - "+ margin * 2 +"px)",
"height": "calc("+ wrapperViewportHeight +"vw - "+ margin * 2 +"px)",
});
$(".small").css({
"width": "calc("+ wrapperViewportWidth +"vw / 6 - "+ margin * 2 +"px)",
"height": "calc("+ wrapperViewportHeight +"vw / 3 - "+ margin * 2 +"px)",
});
$(".middle").css({
"width": "calc("+ wrapperViewportWidth +"vw / 3 - "+ margin * 2 +"px)",
"height": "calc("+ wrapperViewportHeight +"vw / 1.5 - "+ margin * 2 +"px)",
});
});