responsive: Bild nicht skalieren

Programmierung, Templatedesign & Codeschnipsel
Antworten
Benutzeravatar
collection23
Beiträge: 2095
Registriert: 5. Okt 2007 20:55
Land: Deutschland
Firmenname: collection23
Kontaktdaten:

responsive: Bild nicht skalieren

Ich baue gerade ein responsives Theme um und kämpfe mit dem header-logo. Je nach Bildschirmbreite will ich verschieden breite Logos einblenden. Das klappt auch schon, allerdings werden die Logos mit der Bildschirmbreite skaliert. Bei einer riesigen Bildschirmbreite hat das Logo dann z.B. 150% Größe und bei schmalem Bildschirm nur 50%. Die Logos sollen aber immer in der Originalgröße angezeigt werden, für unterschiedliche Bildschirmbreiten gibt es ja extra dafür unterschiedliche Logos.

Hier mal mein HTML code:

Code: Alles auswählen

<div class="ecol-6 logo edit-html">
        <img src="./template/pix/header-schmal.png" srcset="./template/pix/header-schmal.png 600w, ./template/pix/header-breit.png 1200w" >
So sieht das css dazu aus:

Code: Alles auswählen

* {-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}

.ebody {margin:0; padding:0;}

.econtainer {
	max-width:1147px;
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px;
	border:0px solid green;
}

.erow {
    margin-left: -15px;
    margin-right: -15px;
	clear: both;
}

.ecol-1, .ecol-2, .ecol-3, .ecol-4, .ecol-5, .ecol-6, .ecol-7, .ecol-8, .ecol-9, .ecol-10, .ecol-11, .ecol-12 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
	border:0px solid blue;
}

/* NICHT ÄNDERN: !!!! */
#velox {alignment-adjust:after-edge; visibility:collapse}
/* NICHT ÄNDERN: !!!! /*

/* */
@media(min-width: 751px){
	.ecol-1{width:8.3335%}.ecol-2{width:16.6667%}.ecol-3{width:25%}.ecol-4{width:33.3334%}.ecol-5{width:41.6667%}.ecol-6{width:50%}.ecol-7{width:58.3333%}.ecol-8{width:66.6667%}.ecol-9{width:75%}.ecol-10{width:83.3333%}.ecol-11{width:91.6667%}.ecol-12{width:100%}
	.ecol-1, .ecol-2, .ecol-3, .ecol-4, .ecol-5, .ecol-6, .ecol-7, .ecol-8, .ecol-9, .ecol-10, .ecol-11, .ecol-12 {float:left}
	}
@media(min-width:351px){
	.econtainer{width:325px}}@media(min-width:400px){.econtainer{width:375px}}@media(min-width:450px){.econtainer{width:425px}}@media(min-width:500px){.econtainer{width:475px}}@media(min-width:550px){.econtainer{width:525px}}@media(min-width:600px){.econtainer{width:575px}}@media(min-width:650px){.econtainer{width:625px}}@media(min-width:700px){.econtainer{width:675px}}@media(min-width:750px){.econtainer{width:725px}}@media(min-width:800px){
	.econtainer{width:775px}}@media(min-width:850px){.econtainer{width:825px}}@media(min-width:900px){.econtainer{width:875px}}@media(min-width:950px){.econtainer{width:925px}}@media(min-width:1000px){.econtainer{width:975px}}@media(min-width:1050px){.econtainer{width:1025px}}@media(min-width:1100px){.econtainer{width:1075px}}@media(min-width:1150px){.econtainer{width:1125px}}@media(min-width:1200px){.econtainer{width:1175px}}@media(min-width:1250px){
	.econtainer{width:1225px}}@media(min-width:1300px){.econtainer{width:1275px}}@media(min-width:1350px){.econtainer{width:1325px}}@media(min-width:1400px){.econtainer{width:1375px}
	}
Hat jemand eine Idee, was ich ändern muss?


3 Monate gratis Händlerbund
Benutzeravatar
collection23
Beiträge: 2095
Registriert: 5. Okt 2007 20:55
Land: Deutschland
Firmenname: collection23
Kontaktdaten:

Re: responsive: Bild nicht skalieren

Ist mann Urlaubsreif, wenn man wegen sowas früh morgens im Bett wachliegt?

Ich habe gestern noch das halbe Internet durchsucht und keinen Hinweis auf eine mögliche Lösung gefunden. Srcset ist halt für responsive gemacht und nicht für statisch. Ich habe dann das kleinste Bild mit img src eingebunden und wollte es so lassen.

Mir ist aber ein Workaround eingefallen, den ich jetzt doch noch mal probiere: Ich mache sehr viele unterschiedliche Breiten rein. Dann wird zwar immer noch skaliert, aber nach z.B. 10% Skalierung kommt schon das nächste Bild. Das dürfte dann optisch für mich vertetbar sein.
Benutzeravatar
Xantiva
PLUS-Mitglied
PLUS-Mitglied
Beiträge: 4048
Registriert: 22. Okt 2010 17:52
Land: Deutschland
Firmenname: Xantiva.de
Branche: Entwickler, aber auch selber Seller!
Kontaktdaten:

Re: responsive: Bild nicht skalieren

Hast Du schon mal versucht width und heigth für das IMG-Element per CSS in Abhängigkeit von der Bildschirmgröße zu setzen? So dass es mit den Bildgrößen aus dem srcset korreliert?
Benutzeravatar
collection23
Beiträge: 2095
Registriert: 5. Okt 2007 20:55
Land: Deutschland
Firmenname: collection23
Kontaktdaten:

Re: responsive: Bild nicht skalieren

Mit width und height hatte ich schon rumprobiert, aber im html und nicht im CSS. Ich habe aber eine Lösung gefunden:

Code: Alles auswählen

<picture>
   <source media="(min-width: 1200px)" srcset="./pix/header-5.png">
   <source media="(min-width: 1055px)" srcset="./pix/header-4.png">
   <source media="(min-width: 855px)" srcset="./pix/header-3.png">
   <source media="(min-width: 440px)" srcset="./pix/header-2.png">
   <source srcset="./pix/header-1.png">
   <img src="./pix/header-1.png" alt="">
   </picture>
Picture und srcset werden allerdings vom IE nicht unterstützt, aber der zeigt dann wenigstens das Fallbackbild an.
store-designer
Beiträge: 10
Registriert: 7. Mai 2015 19:33

Re: responsive: Bild nicht skalieren

Welches Framework Ist es? Das ist doch viel zu aufwendig. Schau dir mal Bootstrap an. Oder poste mal den Link zu der Demo wie es aussehen soll.

Bei dem Code wird mir ja richtig schwindellig :-)
Benutzeravatar
collection23
Beiträge: 2095
Registriert: 5. Okt 2007 20:55
Land: Deutschland
Firmenname: collection23
Kontaktdaten:

Re: responsive: Bild nicht skalieren

store-designer hat geschrieben:Welches Framework Ist es?
Keine Ahnung. Ich habe ein Fertigtemplate, das ich an meine Bedürfnisse anpasse.
store-designer hat geschrieben: Oder poste mal den Link zu der Demo wie es aussehen soll.
Testumgebung ist momentan nur lokal.
store-designer hat geschrieben:Bei dem Code wird mir ja richtig schwindellig :-)
Wen juckt´s? Ich investiere keine Zeit mehr da rein, der Code funktioniert genau so, wie ich es haben will. Auch wenn Bootstrap das eventuell auch noch beim IE hinbekommt.
zambadu
Beiträge: 76
Registriert: 9. Nov 2015 16:23

Re: responsive: Bild nicht skalieren

Ich geh mal davon aus das ".econtainer" die Breite für alles vorgibt. Dann ist das div ".ecol6" immer 50% davon. Dein IMG-Tag hat keine width Angabe, IE, Chrome und Firefox nehmen in so einen Fall immer die Original Größe des Bildes, was ja dem entspricht was du haben willst.

Ich würde mal vermuten, dass du uns die entscheidende Stelle im CSS vorenthalten hast, dort wo dem IMG irgendeine Breite (ich vermute mal 100%) zugewiesen wird. (Das würde auch erklären warum es mit <picture> geht.) Das muss dann raus, dann sollte das schon so sein wie gewünscht.
Antworten

Zurück zu „HTML, PHP, CSS, & Co.“

  • Information