zurück zur Startseite
  


Zurück XHTMLforum > (X)HTML und CSS > CSS
Seite neu laden Bildgröße automatisch anpassen

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 21.08.2023, 22:19
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 13.08.2009
Beiträge: 47
Sunlion befindet sich auf einem aufstrebenden Ast
Standard Bildgröße automatisch anpassen

Ich möchte Bilder mittels VW/VH an die Bildschirmgröße anpassen, also beispielsweise mit 80vw. Nun macht es ja einen Unterschied, ob die Bilder im Hoch- oder im Querformat vorliegen. Wenn ein Bild höher als breit ist, würden 80vw unter Umständen dazu führen, dass es zu hoch dargestellt wird und oben sowie unten etwas fehlt, weil es über den Bildschirmrand hinausragt. In dem Fall wäre es besser, einen vh-Wert anzugeben.
Gibt es in CSS nicht neuerdings auch die Möglichkeit, entweder/oder-Entscheidungen zu treffen? In diesem Fall also:

wenn Bildbreite größer als Bildhöhe (Querformat), dann 80vw
ansonsten (Hochformat) 80vh.

Geht das irgendwie?
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 22.08.2023, 00:41
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 10.01.2010
Beiträge: 1.123
MrMurphy ist ein sehr geschätzer MenschMrMurphy ist ein sehr geschätzer MenschMrMurphy ist ein sehr geschätzer Mensch
Standard

Zitat:
Geht das irgendwie?
Nein. So ein Vorgehen ist in der Praxis auch unsinnig. Die Gründe hast du ja bereits erkannt.

Die Bildergröße sollte sich automatisch abhängig von den restlichen Infos anpassen. Und nicht von starr der Fenstergröße.

Mit einem Link zu deiner Seite können wir dir eventuell genauer helfen. Voraussetzung ist wie immer ein korrektes HTML und CSS.
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 22.08.2023, 09:57
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 15.09.2015
Beiträge: 159
Sabine1 befindet sich auf einem aufstrebenden Ast
Standard

So könnte man das machen
Code:
@media (orientation: portrait) {
img, picture {
	max-height: 80vw;
	width: auto;
	vertical-align: middle;
}
}
@media (orientation: landscape) {
img, picture {
	max-width: 80vh;
	height: auto;
	vertical-align: middle;
}
}

Geändert von Sabine1 (22.08.2023 um 10:12 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 22.08.2023, 12:44
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 13.08.2009
Beiträge: 47
Sunlion befindet sich auf einem aufstrebenden Ast
Standard

Danke für Eure Rückmeldung.

@Sabine1: orientation bezieht sich doch aber auf die Ausrichtung des Viewports, nicht des Bildes, das angezeigt werden soll, oder verstehe ich das falsch?
Der Browser soll ja entscheiden, ob er die Breite oder die Höhe des Bildes wählt und mit dem Wert 80 anzeigt, in Abhängigkeit, ob das Bild hoch- oder querformatig ist.
Mit Zitat antworten
  #5 (permalink)  
Alt 22.08.2023, 18:06
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 15.09.2015
Beiträge: 159
Sabine1 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Sunlion Beitrag anzeigen

@Sabine1: orientation bezieht sich doch aber auf die Ausrichtung des Viewports, nicht des Bildes, das angezeigt werden soll, oder verstehe ich das falsch?
Nein, du verstehst es nicht falsch.
Ich habe dich falsch verstanden.
Mit Zitat antworten
  #6 (permalink)  
Alt 22.08.2023, 18:11
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 13.08.2009
Beiträge: 47
Sunlion befindet sich auf einem aufstrebenden Ast
Standard

Ah, okay. Schade, macht aber nix.
Mit Zitat antworten
  #7 (permalink)  
Alt 24.08.2023, 11:51
top top ist offline
Benutzer
neuer user
 
Registriert seit: 06.01.2021
Beiträge: 59
top wird schon bald berühmt werden
Standard

Versuch es mal so:

Code:
img, picture {
	max-width: 80vw;
	max-height: 80vh; /* fallback */
	max-height: 80dvh;
	object-fit: scale-down;
}
(Hier besser dvh statt vh nutzen. Ob der Fallback für alte Browser nötig ist musst du selbst entscheiden.)
Mit Zitat antworten
  #8 (permalink)  
Alt 24.08.2023, 12:24
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 13.08.2009
Beiträge: 47
Sunlion befindet sich auf einem aufstrebenden Ast
Standard

Oh, coole Idee, elegant gelöst, das könnte klappen. Danke, probier ich mal aus!
Mit Zitat antworten
  #9 (permalink)  
Alt 24.08.2023, 17:07
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 30.01.2014
Beiträge: 2.243
cloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblickcloned ist ein wunderbarer Anblick
Standard

Inwiefern sollte der einsatz von dvh helfen? das ist doch nur das selbe Problem wieder, nur eben mit einer anderen referenzgröße?

eventuell kommst du mit clamp() ans ziel: damit kannst du eine mindestgröße, gewünschte größe und maximalgröße angeben
https://developer.mozilla.org/en-US/docs/Web/CSS/clamp

Code:
img {
  width: clamp(200px, 80vw, 800px);
}
Heißt: Bild ist minimim 200px breit, maximal 800px, dazwischen ist es bei 80vw
Funktioniert natürlich mit allen Einheiten (px, %, em...) und größen (width, height, font-size...)

kann überall verwendet werden wo einheiten im CSS verwendet werden.
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 24.08.2023, 19:53
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 13.08.2009
Beiträge: 47
Sunlion befindet sich auf einem aufstrebenden Ast
Standard

dvh kenne ich gar nicht, nur view width und view height.
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Div die sich automatisch der Box anpassen Andreas_ CSS 6 24.08.2015 16:20
Höhe automatisch dem Inhalt anpassen Santinho CSS 3 10.08.2012 08:55
Spaltengröße an Bildschirm automatisch anpassen beloved_1975 CSS 2 06.02.2011 18:16
IE soll width von div bei übergroßem inhalt NICHT automatisch anpassen. Wie? *vivian CSS 4 15.09.2008 01:42
Grafik soll sich der Größe eines übergeordneten Feldes automatisch anpassen! VariouStyles CSS 1 30.08.2007 12:17


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:37 Uhr.