Es ist heutzutage ziemlich einfach, Flüssigkeitsbilder in unabh?ngigen Layouts zu verarbeiten. Für komplexere Schnittstellen müssen wir jedoch h?ufig Bilder in reaktionsschnelle Elemente wie dieser Karte platzieren:
Angenommen, dieses Bild ist nicht-semantischer Inhalt und wird nur zur Dekoration verwendet. Dies ist ideal für die Verwendung background-image
. Und da dieses Bild Objekte enth?lt, k?nnen wir bei reaktionsf?higem Layout keine Teile erregen, daher w?hlen wir background-size: contain
.
Das Problem ist: Auf mobilen Ger?ten ?ndert sich diese Kartenorientierung und wird vertikal, wobei das Bild oben. Wir k?nnen dies mit jeder Art von CSS -Layout -Technologie tun, und es ist wahrscheinlich am besten, ein CSS -Gitter oder eine Gummibeldung zu verwenden.
Wenn wir jedoch kleinere Bildschirme testen, erhalten wir aufgrund contain
Attributs die folgenden Ergebnisse:
Das ist nicht ideal. Das Bild wird ge?ndert, um das Seitenverh?ltnis aufrechtzuerhalten, und wirkt keine Details. Wir k?nnen background-size
nicht cover
, wenn das Bild wichtig ist und nicht beschnitten werden sollte.
Zu diesem Zeitpunkt k?nnte unser n?chster Versuch bekannt sein: Platzieren Sie das Bildinline, nicht den Hintergrund.
Auf Desktop -Ger?ten funktioniert dies gut:
Es ist auch gut auf mobilen Ger?ten:
Auf kleineren Bildschirmen wird der Anteil des Bildes jedoch aufgrund aller festen Gr??en verzerrt.
Wir k?nnen Stunden damit verbringen, Bilder, Karten und elastische Eigenschaften anzupassen und hin und her anzupassen. Oder wir k?nnen ...
Trennende Hauptinhalte vom Hintergrund
Dies ist die Grundlage, um mehr Flexibilit?t und Flexibilit?t in reaktionsschnellen Bildern zu erlangen. Obwohl dies in allen F?llen nicht m?glich ist, kann dies in vielen F?llen mit nur ein wenig Aufwand im Design erreicht werden, insbesondere wenn ein solcher Ansatz im Voraus geplant ist.
In unserer n?chsten Iteration legen wir das Erdbeerbild auf einen transparenten Hintergrund und verwenden CSS, um die blaue Farbe im Rasterbild einzustellen. Verwenden Sie weiterhin die Ansichtsfenstergr??e in der Demo, indem Sie die Gr??e des Beispielraums ?ndern!
Wenn wir uns die Stile sorgf?ltig ansehen, beachten Sie, dass wir dem Div, das das Bild enth?lt, auch Polsterung hinzufügen, sodass die Erdbeeren nicht zu nahe an den Kanten kommen. Wir k?nnen vollst?ndig steuern, wie nah oder weit wir m?chten, dass sie mit dieser Polsterung zusammen sind.
Beachten Sie, dass wir auch negative Margen verwenden, um die Polsterung der externen Kartenverpackung kompensieren zu k?nnen, andernfalls gibt es Rohlinge um das Bild.
Verwenden Sie das Objekt-Fit-Attribut für Inline-Bilder
Obwohl die vorherige Demonstration funktioniert, k?nnen wir diesen Ansatz noch verbessern. Bisher nahmen wir an, dass das Bild semantischer Inhalt war-aber in diesem Layout k?nnen Bildabbildungen m?glicherweise auch mehr als nur Dekoration sein.
Wenn dies der Fall ist, m?chten wir unbedingt nicht, dass das Bild zugeschnitten wird, da dies tats?chlich dem Datenverlust entspricht. Um dies zu verhindern, ist es am besten, das Bild inline anstelle des Hintergrunds zu platzieren, was wir mit object-fit
-Eigenschaft tun k?nnen.
Wir haben die Erdbeere aus dem Hintergrund extrahiert, was jetzt ein Inline -Element ist, aber wir behalten die Hintergrundfarbe im selben Bilddiv.
Das Kombinieren von object-fit: contain
mit einer Breite 100%
erm?glicht es Ihnen, das Fenster zu ?ndern und das Seitenverh?ltnis der Erdbeere beizubehalten. Der Nachteil dieses Ansatzes besteht jedoch darin, dass wir eine feste H?he für die Desktop -Version des Bildes festlegen müssen - oder es folgt dem Anteil der festgelegten Breite (Reduzierung des Layouts ?ndert sich). Wenn wir diese Karten mit einer variablen Textmenge generieren müssen, wird der Text eingewickelt, was die Dinge zu restriktiv machen kann.
Bald kommen: Aspektverh?ltnis
Die L?sung für das oben genannte Problem kann bald über die kommende aspect-ratio
-Eigenschaft implementiert werden. Auf diese Weise k?nnen Sie beispielsweise eine feste Skala des Elements festlegen:
.el { Aspektverh?ltnis: 16/9; }
Dies bedeutet, dass wir die feste H?he beseitigen und durch das von uns berechnete Seitenverh?ltnis ersetzen k?nnen. Zum Beispiel sehen die Dimensionen im Desktop -Haltepunkt unseres letzten Beispiels so aus:
.Bild { / * ... */ H?he: 184px; Breite: 318px; }
Mithilfe von aspect-ratio
k?nnen wir die H?henerkl?rung l?schen und berechnen, um die n?chste Skala von 184 zu erhalten:
.Bild { / * ... */ Breite: 318px; /* Referenzbreite*/ H?he: Uneinig; /* Setzen Sie die H?he der H?he von Au?enmedien zurück. Aspektverh?ltnis: 159 /92; /* Nahe 184px H?he*/ }
Wenn Sie mehr erfahren m?chten, k?nnen Sie die bevorstehenden Attribute in diesem Artikel untersuchen.
Schlie?lich gibt es mehrere M?glichkeiten, zuverl?ssige reaktionsschnelle Bilder in Layouts mit variabler Skala zu erreichen. Aber der Trick, diese Arbeit zu erleichtern - und besser - liegt nicht unbedingt in CSS; Es kann einfach sein, einfach Ihr Bild anzupassen, unabh?ngig davon, ob es den Vordergrund vom Hintergrund trennen soll (wie wir es getan haben) oder ein bestimmtes Bild auszuw?hlen, das auch dann funktioniert, wenn ein betr?chtlicher Teil der Kante beschnitten wird.
Das obige ist der detaillierte Inhalt vonFlüssigkeitsbilder in einem variablen Anteilslayout. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen





Es gibt drei M?glichkeiten, einen CSS -Laderotator zu erstellen: 1. Verwenden Sie den Basisrotator der Grenzen, um eine einfache Animation durch HTML und CSS zu erreichen. 2. Verwenden Sie einen benutzerdefinierten Rotator mit mehreren Punkten, um den Sprungeffekt durch verschiedene Verz?gerungszeiten zu erreichen. 3. Fügen Sie einen Rotator in die Taste hinzu und wechseln Sie den Klassen über JavaScript, um den Ladestatus anzuzeigen. Jeder Ansatz betont die Bedeutung von Entwurfsdetails wie Farbe, Gr??e, Zug?nglichkeit und Leistungsoptimierung, um die Benutzererfahrung zu verbessern.

Um mit CSS -Browser -Kompatibilit?t und Pr?fixproblemen umzugehen, müssen Sie die Unterschiede im Browser -Support verstehen und Anbieterpr?fixe vernünftigerweise verwenden. 1. Verstehen Sie gemeinsame Probleme wie Flexbox und Grid -Unterstützung, Position: Sticky Invaly und Animationsleistung ist unterschiedlich. 2. überprüfen Sie den Best?tigungsunterstützungsstatus von Caniuse. 3. Verwenden Sie korrekt -webkit-, -moz-, -ms-, -o- und andere Herstellerpr?fixe; 4. Es wird empfohlen, Autoprefixer zu verwenden, um automatisch Pr?fixe hinzuzufügen. 5. Postcss installieren und Browserlist konfigurieren, um den Zielbrowser anzugeben. 6. automatisch die Kompatibilit?t w?hrend des Baus bew?ltigen; 7. Modernizr -Erkennungsmerkmale k?nnen für alte Projekte verwendet werden; 8. Keine Notwendigkeit, die Konsistenz aller Browser zu verfolgen,

Verwenden Sie das Clip-Pfad-Attribut von CSS, um Elemente in benutzerdefinierte Formen wie Dreiecke, kreisf?rmige Kerben, Polygone usw. zu erregen, ohne sich auf Bilder oder SVGs zu verlassen. Zu den Vorteilen geh?ren: 1.. Unterstützt eine Vielzahl von Grundformen wie Circle, Ellipse, Polygon usw.; 2. reagierende Anpassung und anpassbar an mobile Terminals; 3. Einfach zu animation und kann mit Hover oder JavaScript kombiniert werden, um dynamische Effekte zu erzielen. 4. Es wirkt sich nicht auf den Layoutfluss aus und erfüllt nur den Anzeigebereich. H?ufige Verwendungen sind z. B. kreisf?rmiger Clip-Pfad: Kreis (50pxatcenter) und Dreieck-Clip-Pfad: Polygon (50%0%, 100 0%, 0 0%). Beachten

ThemaNDiffercesbetweenplay: Inline, Block, Andinline-Blockinhtml/CsSarelayoutBehavior, Spaceusage und Stylingcontrol.1.inlineelementsflowwithtext, Don'tstartonNewlines, Ignorewidth/HeighthThorchingstyhorching-/idelthorchorching/ardaldhordhortaliTalding/ardaldhordelthortex

Durch das Festlegen des von Ihnen besuchten Links k?nnen Sie die Benutzererfahrung verbessern, insbesondere in inhaltsintensiven Websites, um den Benutzern dabei zu helfen, sich besser zu navigieren. 1. Verwenden Sie CSS: Besuchte Pseudoklasse, um den Stil des besuchten Links wie Farb?nderungen zu definieren. 2. Beachten Sie, dass der Browser nur eine ?nderung einiger Attribute aufgrund von Datenschutzbeschr?nkungen erm?glicht. 3. Die Farbauswahl sollte mit dem Gesamtstil koordiniert werden, um abrupte abrupt zu werden. 4. Das mobile Terminal zeigt diesen Effekt m?glicherweise nicht an. Es wird empfohlen, ihn mit anderen visuellen Eingabeaufforderungen wie Icon -Auxiliary -Logos zu kombinieren.

ThecsspaintingapienablesDynamicimageGenerationIncsSusingjavaScript.1.DevelopersCreateApaintworkletClassClasswithapaint () Methode.2.TheyRegisteritviaRegisterPaint (). 3.TheCustonTfunctionDenusedincsincssproperties ?hnlich von Background-Image.ThisallowsfordyNamicvis

Um reaktionsschnelle Bilder mit CSS zu erstellen, kann es haupts?chlich durch die folgenden Methoden erreicht werden: 1. Verwenden Sie maximale Breite: 100% und H?he: Auto, damit das Bild an die Containerbreite anpasst und gleichzeitig den Anteil beibeh?lt. 2. Verwenden Sie die SRCSet- und Gr??enattribute von HTML, um die an verschiedenen Bildschirme angepassten Bildquellen intelligent zu laden. 3.. Verwenden Sie Objektfit und Objektposition, um die Bildaufbindung und Fokusanzeige zu steuern. Gemeinsam stellen diese Methoden sicher, dass die Bilder auf verschiedenen Ger?ten klar und wundersch?n pr?sentiert werden.

Verschiedene Browser weisen Unterschiede in der CSS -Analyse auf, was zu inkonsistenten Anzeigeeffekten führt, haupts?chlich die Differenzentscheidung, die Berechnung des Boxmodells, die Flexbox- und Raster -Layout -Unterstützung und das inkonsistente Verhalten bestimmter CSS -Attribute. 1. Die Standardstilverarbeitung ist inkonsistent. Die L?sung besteht darin, CSSReset oder Normalize.css zu verwenden, um den anf?nglichen Stil zu vereinen. 2. Die Box -Modellberechnung der alten Version von IE ist unterschiedlich. Es wird empfohlen, eine einheitliche Boxgr??e: Border-Box zu verwenden. 3. Flexbox und Grid führen in Kantenf?llen oder in alten Versionen unterschiedlich ab. Weitere Tests und verwenden Sie Autoprefixer; 4. Einige CSS -Attributverhalten sind inkonsistent. Caniuse muss konsultiert und herabgestuft werden.
