Heim Web-Frontend js-Tutorial Ausführliche Erläuterung des prozentualen CSS-Auffüllens zum Erstellen eines adaptiven Bildlayouts

Ausführliche Erläuterung des prozentualen CSS-Auffüllens zum Erstellen eines adaptiven Bildlayouts

Dec 26, 2017 am 09:39 AM
padding 百分比

<p>Dieser Artikel gibt Ihnen hauptsächlich eine detaillierte Erklärung des prozentualen CSS-Auffüllens zum Erstellen eines adaptiven Bildlayouts. CSS-Wissenspunkt: Wenn Auffüllen/Rand einen Wert in Form eines Prozentsatzes annimmt, unabhängig davon, ob er links/rechts oder oben/unten ist , es basiert auf dem übergeordneten Element. Die Breite ist die Referenz!

<p>1. Die prozentuale CSS-Auffüllung wird relativ zur Breite berechnet

<p>In der standardmäßigen horizontalen Dokumentflussrichtung sind die vertikalen Prozentwerte der CSS-Attribute margin und padding relativ Bei der Breitenberechnung unterscheidet sich dieser vom Prozentwert von Attributen wie top und bottom.

<p>Die Gründe für dieses Design werden in meinem neuen Buch (das in ein paar Monaten erscheinen soll) erläutert, daher gehe ich hier nicht weiter darauf ein.

<p>Für das Attribut padding wird der Prozentsatz padding in jeder Richtung für die Breite berechnet, sodass wir problemlos einen Container mit festem Anteil auf Blockebene implementieren können. Angenommen, es gibt einen <p> Element. :

p { padding: 50%; }
Nach dem Login kopieren
<p>

<p> oder:

p { padding: 100% 0 0; }
Nach dem Login kopieren
<p>

<p> oder:

p { padding-bottom: 100%; }
Nach dem Login kopieren
<p>

<p> Dann ist die Größe dieses <p> Elements ein Quadrat mit einer Breite und Höhe von 1:1, egal wie breit es ist Der übergeordnete Container ist, dass dieses <p>-Element die Proportionen immer gleich halten kann.

<p>Welche Funktion hat diese Funktion, mit der das Verhältnis korrigiert werden kann?

<p>Für die meisten Layouts benötigen wir keine festen Proportionen, aber es gibt eine Ausnahme, und das ist das Bild, denn die Originalgröße des Bildes ist fest. Im herkömmlichen Layout mit fester Breite legen wir bestimmte Breiten- und Höhenwerte für das Bild fest, um sicherzustellen, dass unser Bild einen stabilen Bereich einnimmt Das Bild ist sehr klein. Für eine Bannerwerbung auf dem Mobiltelefon beträgt die Breite beispielsweise 375, unter dem iPhone 7 Plus 414, und es gibt andere Größen wie 360. Was benötigt wird Derzeit handelt es sich nicht um eine feste Größeneinstellung für das Bild, sondern um eine Proportionseinstellung.

<p> hat normalerweise die folgenden Implementierungen:

<p>

<p>

<p>1. Legen Sie eine Höhe fest und verwenden Sie dann das Attributsteuerelement background-size wie folgt:

.banner {
 height: 40px;
 background-size: cover;
}
Nach dem Login kopieren
<p>

<p>Der Echtzeiteffekt ist wie folgt:

<p>Sie können sehen, dass bei einer Änderung der Breite immer ein Bild vorhanden ist Bereiche (Breite oder Höhe), die nicht angezeigt werden können.

<p>2. Verwenden Sie die Ansichtsfensterbreiteneinheit vw wie folgt:

.banner {
 height: 15.15vw;
 background-size: cover;
}
Nach dem Login kopieren
<p>

<p>Wenn die Kompatibilitätsanforderungen nicht sehr hoch sind, verwenden vwEs ist auch eine gute Idee, zumindest ist es einfacher zu verstehen.

<p>Wenn unser Bild jedoch kein Banner ist, sondern einen Abstand von der linken und rechten Seite haben muss, ist unser CSS-Code zu diesem Zeitpunkt etwas umständlich Perfekte Proportionen, wir können CSS3 verwenden 1rem Berechnung: calc()

.banner {
 height: calc(0.1515 * (100vw - 2rem));
 background-size: cover;
}
Nach dem Login kopieren
<p>

Wenn die Breite des Bildes von beiden Seiten dynamisch unsicher ist, dann <p> ist derzeit ebenfalls überdehnt, es ist zwar nur ein gewöhnliches und unauffälliges calc() Attribut, aber seine Kompatibilität und Anpassungsfähigkeit sind erstklassig. padding

3. Verwenden Sie den Prozentsatz <p> wie folgt: padding

.banner {
 padding: 15.15% 0 0;
 background-size: cover;
}
Nach dem Login kopieren
<p>

Zu diesem Zeitpunkt, egal wie die externen Elemente des Wenn sich das Bild ändert, bleibt der Anteil konstant. <p>

2. CSS-Prozentabstand und breitenadaptives Bildlayout <p>

Aber manchmal sind unsere Bilder nicht praktisch, um als Hintergrundbilder dargestellt zu werden, sondern sind inline <p>, Prozentsatz <img>Es kann auch Die Suchroutine ist relativ fest vorgegeben. Außerhalb des Bildelements ist ein Containerelement mit festem Anteil erforderlich, beispielsweise die folgende HTML-Struktur: padding

<br/>
Nach dem Login kopieren
Nach dem Login kopieren

<p class="banner">
 <img src=""banner.jpg>
</p>
Nach dem Login kopieren
< Das 🎜><p>

-Element ist auch für die Steuerung der Proportionen verantwortlich, und dann wird das Bild mit dem <p>-Element gefüllt. Der CSS-Code lautet wie folgt: .banner.banner

.banner {
 padding: 15.15% 0 0;
 position: relative;
}
.banner > img {
 position: absolute;
 width: 100%; height: 100%;
 left: 0; top: 0;
}
Nach dem Login kopieren
<p> Wirkung Es ist geschafft!

<p>Sehen heißt glauben. Letztes Jahr wurden die Bannerwerbung auf vielen Seiten der mobilen Version der Qidian-Website auf diese Weise implementiert. Den endgültigen Effekt finden Sie im GIF-Screenshot unten (falls das Bild nicht angezeigt werden kann). Sie können einen Kommentar hinterlassen):

<p>

<p>Wie Sie sehen, ist das Verhältnis unserer Werbebilder unabhängig von der Breite des Bildschirms festgelegt, es kommt zu keinem Clipping Es wird kein Bereich fehlen und das Layout sieht sehr aufgeräumt aus. Flexibler und robuster.

<p>————-

<p>Eigentlich habe ich aufgrund der Existenz von

Einheiten den praktischen Nutzen von Prozenten immer unterschätzt besser Es ist einfacher, daher habe ich die relevanten Techniken nicht vorgestellt. Da jedoch immer mehr bildbezogene Layouts verarbeitet werden, habe ich festgestellt, dass der praktische Wert des Prozentsatzes <p> größer ist als gedacht. Er ist auf mehr Szenarien anwendbar als die padding-Einheit und weist eine bessere Kompatibilität auf (die Prozentfunktion wird von IE6+ unterstützt). Das Bild deckt 100 % IE8+-Unterstützung ab. vwvwWenn bei komplexen Layouts die Breite des Bildes nicht fest und anpassungsfähig ist, denken wir uns normalerweise einen Trick aus, der darin besteht, nur die Breite des Bildes festzulegen, zum Beispiel: paddingvw

<p>

<p>此时浏览器默认会保持图片比例显示,图片宽度大了,高度也跟着一起变大;图片宽度小了,高度也跟着一起变小。开发人员似乎无需关心图片真实比例是怎样的。

<p>然而这种技巧有一个非常不好的体验问题,那就是随着页面加载的进行,图片占据的高度会有一个从0到计算高度的图片变化,视觉上会有明显的元素跳动,代码层面会有布局重计算。

<p>所以对图片高宽进行同时约定还是有必要的,但是同时要保证宽度自适应,似乎有点难度。记住,如果遇到这种需求场景,没有比百分比padding布局更好的做法!

<p>缩小浏览器宽度可以看到不同宽度下的布局效果,Gif效果截图如下:

<p>

<p>此demo难点就是图片自适应同时保持比例,以及页面刷新的时候没有布局稳固不晃动,其核心HTML和CSS代码如下:

<br/>
Nach dem Login kopieren
Nach dem Login kopieren

<p class="works-item-t">
  <img src="./150x200.png">
</p>
Nach dem Login kopieren
<p>

.works-item-t {
 padding-bottom: 133%;
 position: relative;
}
.works-item-t > img {
 position: absolute;
 width: 100%; height: 100%;
}
Nach dem Login kopieren
<p>

<p>可以看到,当把垂直方向padding值只使用padding-bottom表示的时候,如果没有text-align属性干扰,<img>元素的left:0;top:0是可以省略的。

<p>对于这种图片宽度100%容器,高度按比例的场景,padding-bottom的百分比值大小就是图片元素的高宽比,就这么简单。

<p>但,有时候,图片宽度并不是100%容器的,例如,图片宽度50%容器宽度,图片高宽比4:3,此时,CSS垂直方向百分比就666了,如下:

.img-box {
 padding: 0 50% 66.66% 0;
}
Nach dem Login kopieren
<p>相关推荐:

<p>一个CSS+div高度自适应布局模型_html/css_WEB-ITnose

<p>CSS3自适应全屏焦点图切换的特效怎么做

<p>响应式和自适应有什么区别

<p>

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung des prozentualen CSS-Auffüllens zum Erstellen eines adaptiven Bildlayouts. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie konvertiert man in Python einen Bruch in einen Prozentsatz? Wie konvertiert man in Python einen Bruch in einen Prozentsatz? Aug 25, 2023 pm 01:25 PM

Brüche und Prozentsätze sind zwei grundlegende mathematische Konzepte, die in verschiedenen Bereichen wie Finanzen, Datenanalyse und Statistik verwendet werden. Das Umwandeln eines Bruchs in einen Prozentsatz ist eine einfache, aber notwendige Operation, die es uns ermöglicht, Bruchwerte verständlicher darzustellen. Python, eine der beliebtesten Programmiersprachen, bietet mehrere Methoden zum Umwandeln von Brüchen in Prozente. Das Verständnis dieser Methoden ist für jeden, der in Python mit Daten arbeitet, von entscheidender Bedeutung. Dieser Artikel befasst sich ausführlich mit der Umwandlung von Brüchen in Prozentsätze in Python. Wir werden verschiedene Möglichkeiten hierfür untersuchen und Beispiele bereitstellen, um Ihnen das Verständnis der einzelnen Methoden zu erleichtern. Egal, ob Sie ein Anfänger oder ein erfahrener Python-Programmierer sind, dieser Artikel gibt Ihnen den Schlüssel dazu, dies in Python zu tun

Detaillierte Erläuterung der CSS-Rahmeneigenschaften: Polsterung, Rand und Rand Detaillierte Erläuterung der CSS-Rahmeneigenschaften: Polsterung, Rand und Rand Oct 21, 2023 am 11:07 AM

CSS-Rahmeneigenschaften im Detail erklärt: Padding, Margin und BorderCSS ist eine Stylesheet-Sprache, die zur Steuerung und Gestaltung von Webseitenelementen verwendet wird. Im Webdesign ist das Randattribut einer der wichtigsten Teile. In diesem Artikel wird die Verwendung des Border-Attributs in CSS ausführlich vorgestellt und spezifische Codebeispiele bereitgestellt. padding Mit der padding-Eigenschaft wird der Abstand eines Elements festgelegt, also der Abstand zwischen dem Inhalt des Elements und den Rändern des Elements. Wir können die Auffüllung mit positiven Zahlen oder Prozentwerten festlegen

Python-Programm zum Ermitteln des Prozentsatzes der Worthäufigkeit Python-Programm zum Ermitteln des Prozentsatzes der Worthäufigkeit Sep 08, 2023 pm 06:29 PM

In diesem Artikel erfahren Sie, wie Sie die Worthäufigkeit in Python als Prozentsatz ermitteln. Angenommen, wir haben eine Liste von String-Eingaben erhalten. Jetzt ermitteln wir den Prozentsatz jedes Wortes in der angegebenen Liste der Eingabezeichenfolgen. Die Formel (OccurrenceofXword/Totalwords)*100 verwendet die Funktionen „sum()“, „Counter()“, „join()“ und „split()“. Verwenden Sie die Funktionen „join()“, „split()“ und „count()“. das Betreibermodul. Methode 1: Verwenden Sie die Funktionen sum(), Counter(), join() und split(). join() ist Py

Detaillierte Erläuterung der CSS-Textlayouteigenschaften: Textüberlauf und Leerraum Detaillierte Erläuterung der CSS-Textlayouteigenschaften: Textüberlauf und Leerraum Oct 20, 2023 am 11:19 AM

Detaillierte Erläuterung der CSS-Textlayouteigenschaften: Textüberlauf und Leerraum Im Webdesign ist das Textlayout ein sehr wichtiger Link. Ein angemessenes Layout kann den Text lesbarer und schöner machen. CSS bietet mehrere Eigenschaften, um zu steuern, wie Text angezeigt wird, einschließlich Textüberlauf und Leerraum. In diesem Artikel werden die Verwendung und der Beispielcode dieser beiden Eigenschaften detailliert beschrieben. 1. Textüberlauf-Attributtext

So verwenden Sie das Padding-Attribut in CSS So verwenden Sie das Padding-Attribut in CSS Dec 07, 2023 pm 02:58 PM

In CSS wird die padding-Eigenschaft verwendet, um den Abstand eines Elements festzulegen. Dies bedeutet, dass es den Abstand zwischen dem Inhalt des Elements und seinem Rand definiert. Die grundlegende Syntax ist „padding: value;“.

Detaillierte Erklärung des Linux-Top-Befehls Detaillierte Erklärung des Linux-Top-Befehls Feb 20, 2024 am 09:20 AM

Drücken Sie 1, um die Auslastung jeder CPU anzuzeigen. Die Laufzeit ist der aktuell angemeldete Benutzer (1 Minute, 5 Minuten, 10 Minuten). alle 5 Sekunden und berechnet den Wert. Wenn die Zahl dividiert durch die Anzahl der logischen CPUs größer als 5 ist, liegt eine Überlastung des Systems vor. Die zweite Zeile enthält insgesamt 248 Prozesse, 1 läuft, 247 ruhen, 0 gestoppt, 0 Zombie-Prozesse. Die dritte Zeile us (userspace): der Prozentsatz der vom Benutzer belegten CPU. sy (sysctl): der Prozentsatz der von Kernel-Speicherplatz ni() – Der Prozentsatz der CPU, die von dem Prozess belegt ist, der die Prioritäts-ID geändert hat (Idolt): Leerlauf-CPU-Prozentsatz wa (Warten): E/A-Wartezeit belegter CP

Wie aktiviere ich die Anzeige des Batterieprozentsatzes auf dem iPhone? Wie aktiviere ich die Anzeige des Batterieprozentsatzes auf dem iPhone? May 08, 2023 pm 12:07 PM

So zeigen Sie den Batterieprozentsatz auf dem iPhone an Bisher mussten Sie zum Öffnen des Kontrollzentrums nach unten wischen, um den genauen Prozentsatz der verbleibenden Batterieleistung zu ermitteln. Die Option, den genauen Batterieprozentsatz am oberen Rand des Sperrbildschirms anzuzeigen, ist jedoch wieder da. So zeigen Sie den Batterieprozentsatz auf Ihrem iPhone an: Öffnen Sie die App „Einstellungen“ auf dem Startbildschirm Ihres iPhones. Wischen Sie im Menü „Einstellungen“ nach unten und tippen Sie in der Liste auf „Akku“. Als nächstes schalten Sie den Batterieprozentsatzknopf in die Ein-Position. Schließlich sehen Sie über dem Batteriesymbol in der oberen rechten Ecke des Bildschirms den genauen Prozentsatz der verbleibenden Leistung. Wenn die Funktion aktiviert ist, werden Prozentzahlen angezeigt, wenn Sie den Sperrbildschirm, den Startbildschirm und die meisten Apps durchsuchen. Der Batterieprozentsatz wird nicht angezeigt? Wenn Sie das nicht sehen

Erkunden der Eigenschaften des CSS-Boxmodells: Innenabstand, Rand und Rand Erkunden der Eigenschaften des CSS-Boxmodells: Innenabstand, Rand und Rand Oct 20, 2023 pm 03:09 PM

Erkundung der Eigenschaften des CSS-Boxmodells: Abstand, Rand und Rahmen. Das CSS-Boxmodell ist eines der wichtigen Konzepte im Webseitenlayout. Bei der Frontend-Entwicklung ist das Verständnis und die korrekte Verwendung der Padding-, Margin- und Border-Attribute von entscheidender Bedeutung. Dieser Artikel befasst sich mit der Verwendung und Korrelation dieser drei Eigenschaften und stellt spezifische Codebeispiele bereit. 1. Einführung in das Boxmodell Das Boxmodell besteht aus vier Teilen: Inhalt, Polsterung, Bo

See all articles