TLDR;
Verwenden Sie dieses HTML / CSS, um ein Bild hinzuzufügen, zu zentrieren und seine Größe auf 60% der Bildschirmbreite in Ihrer Markdown-Datei festzulegen. Dies ist normalerweise ein guter Startwert:
<img src="https://i.stack.imgur.com/RJj4x.png"
style="display:block;float:none;margin-left:auto;margin-right:auto;width:60%">
Ändern Sie den width
CSS-Wert auf den gewünschten Prozentsatz oder entfernen Sie ihn ganz, um die Standardgröße für den Abschlag zu verwenden, die meiner Meinung nach 100% der Bildschirmbreite beträgt, wenn das Bild größer als der Bildschirm ist, oder ansonsten die tatsächliche Bildbreite.
Erledigt!
Oder lesen Sie weiter, um weitere Informationen zu erhalten.
Hier sind verschiedene HTML- und CSS-Optionen, die perfekt in Markdown-Dateien funktionieren:
1. Zentrieren und konfigurieren Sie (ändern Sie die Größe) ALLE Bilder in Ihrer Markdown-Datei:
Kopieren Sie diese einfach und fügen Sie sie oben in Ihre Markdown-Datei ein, um alle Bilder in der Datei zu zentrieren und ihre Größe zu ändern (und fügen Sie dann einfach alle gewünschten Bilder mit normaler Markdown-Syntax ein):
<style>
img
{
display:block;
float:none;
margin-left:auto;
margin-right:auto;
width:60%;
}
</style>
Oder hier ist derselbe Code wie oben, jedoch mit detaillierten HTML- und CSS-Kommentaren, um genau zu erklären, was los ist:
<!-- (This is an HTML comment). Copy and paste this entire HTML `<style>...</style>` element (block)
to the top of your markdown file -->
<style>
/* (This is a CSS comment). The below `img` style sets the default CSS styling for all images
hereafter in this markdown file. */
img
{
/* Default display value is `inline-block`. Set it to `block` to prevent surrounding text from
wrapping around the image. Instead, `block` format will force the text to be above or below the
image, but never to the sides. */
display:block;
/* Common float options are `left`, `right`, and `none`. Set to `none` to override any previous
settings which might have been `left` or `right`. `left` causes the image to be to the left,
with text wrapped to the right of the image, and `right` causes the image to be to the right,
with text wrapped to its left, so long as `display:inline-block` is also used. */
float:none;
/* Set both the left and right margins to `auto` to cause the image to be centered. */
margin-left:auto;
margin-right:auto;
/* You may also set the size of the image, in percent of width of the screen on which the image
is being viewed, for example. A good starting point is 60%. It will auto-scale and auto-size
the image no matter what screen or device it is being viewed on, maintaining proporptions and
not distorting it. */
width:60%;
/* You may optionally force a fixed size, or intentionally skew/distort an image by also
setting the height. Values for `width` and `height` are commonly set in either percent (%)
or pixels (px). Ex: `width:100%;` or `height:600px;`. */
/* height:400px; */
}
</style>
Nun, ob Sie ein Bild mit Markdown einfügen:
![](https://i.stack.imgur.com/RJj4x.png)
Oder HTML in Ihrer Markdown-Datei:
<img src="https://i.stack.imgur.com/RJj4x.png">
... wird automatisch zentriert und auf 60% der Breite der Bildschirmansicht dimensioniert, wie in den Kommentaren in HTML und CSS oben beschrieben. (Natürlich kann die Größe von 60% auch sehr leicht geändert werden, und ich stelle im Folgenden einfache Möglichkeiten vor, dies auch bildweise zu tun).
2. Zentrieren und konfigurieren Sie Bilder von Fall zu Fall nacheinander:
Unabhängig davon, ob Sie den obigen <style>
Block kopiert und oben in Ihre Markdown-Datei eingefügt haben oder nicht , funktioniert dies auch, da er alle oben festgelegten Einstellungen für den Dateibereichsstil überschreibt und Vorrang vor diesen hat:
<img src="https://i.stack.imgur.com/RJj4x.png" style="display:block;float:none;margin-left:auto;margin-right:auto;width:60%">
Sie können es auch in mehreren Zeilen formatieren, und es funktioniert weiterhin:
<img src="https://i.stack.imgur.com/RJj4x.png"
alt="this is an optional description of the image to help the blind and show up in case the
image won't load"
style="display:block; /* override the default display setting of `inline-block` */
float:none; /* override any prior settings of `left` or `right` */
/* set both the left and right margins to `auto` to center the image */
margin-left:auto;
margin-right:auto;
width:60%; /* optionally resize the image to a screen percentage width if you want too */
">
3. Zusätzlich zu allen oben genannten, können Sie auch CSS - Stil erstellen Klassen , um Hilfe zu stilisieren Einzelbilder:
Fügen Sie diese ganze Sache oben in Ihre Markdown-Datei ein.
<style>
/* By default, make all images center-aligned, and 60% of the width
of the screen in size */
img
{
display:block;
float:none;
margin-left:auto;
margin-right:auto;
width:60%;
}
/* Create a CSS class to style images to left-align, or "float left" */
.leftAlign
{
display:inline-block;
float:left;
/* provide a 15 pixel gap between the image and the text to its right */
margin-right:15px;
}
/* Create a CSS class to style images to right-align, or "float right" */
.rightAlign
{
display:inline-block;
float:right;
/* provide a 15 pixel gap between the image and the text to its left */
margin-left:15px;
}
</style>
Jetzt hat Ihr img
CSS-Block die Standardeinstellung für zentrierte Bilder und 60% der Breite des Bildschirmbereichs festgelegt. Sie können jedoch die Klassen leftAlign
und rightAlign
CSS verwenden, um diese Einstellungen bildweise zu überschreiben.
Zum Beispiel ist dieses Bild mittig ausgerichtet und 60% groß (die Standardeinstellung, die ich oben festgelegt habe):
<img src="https://i.stack.imgur.com/RJj4x.png">
Dieses Bild wird jedoch linksbündig ausgerichtet , wobei der Text mit der oben erstellten leftAlign
CSS-Klasse rechts umbrochen wird!
<img src="https://i.stack.imgur.com/RJj4x.png" class="leftAlign">
Es könnte so aussehen:
Sie können jedoch weiterhin alle CSS-Eigenschaften über das style
Attribut überschreiben , z. B. die Breite wie folgt:
<img src="https://i.stack.imgur.com/RJj4x.png" class="leftAlign" style="width:20%">
Und jetzt bekommen Sie Folgendes:
4. Erstellen Sie 3 CSS-Klassen, ändern Sie jedoch nicht die img
Markdown-Standardeinstellungen
Eine weitere Option zu dem, was wir oben gezeigt haben, wo wir die Standardeinstellungen geändert img
property:value
und 2 Klassen erstellt haben, besteht darin, alle Standard-Markdown- img
Eigenschaften in Ruhe zu lassen, aber 3 benutzerdefinierte CSS-Klassen wie folgt zu erstellen:
<style>
/* Create a CSS class to style images to center-align */
.centerAlign
{
display:block;
float:none;
/* Set both the left and right margins to `auto` to cause the image to be centered. */
margin-left:auto;
margin-right:auto;
width:60%;
}
/* Create a CSS class to style images to left-align, or "float left" */
.leftAlign
{
display:inline-block;
float:left;
/* provide a 15 pixel gap between the image and the text to its right */
margin-right:15px;
width:60%;
}
/* Create a CSS class to style images to right-align, or "float right" */
.rightAlign
{
display:inline-block;
float:right;
/* provide a 15 pixel gap between the image and the text to its left */
margin-left:15px;
width:60%;
}
</style>
Verwenden Sie sie natürlich so:
<img src="https://i.stack.imgur.com/RJj4x.png" class="centerAlign" style="width:20%">
Beachten Sie, wie ich die width
Eigenschaft mithilfe des style
obigen CSS- Attributs manuell festgelegt habe. Wenn ich jedoch etwas Komplizierteres tun wollte, könnte ich auch einige zusätzliche Klassen wie diese erstellen und sie im <style>...</style>
obigen Block hinzufügen :
/* custom CSS class to set a predefined "small" size for an image */
.small
{
width:20%;
/* set any other properties, as desired, inside this class too */
}
Jetzt können Sie demselben Objekt mehrere Klassen zuweisen. Trennen Sie Klassennamen einfach durch ein Leerzeichen, NICHT durch ein Komma . Im Falle widersprüchlicher Einstellungen glaube ich, dass die zuletzt verwendete Einstellung diejenige ist, die wirksam wird und alle zuvor festgelegten Einstellungen überschreibt. Dies sollte auch der Fall sein, wenn Sie dieselben CSS-Eigenschaften mehrmals in derselben CSS-Klasse oder innerhalb desselben HTML- style
Attributs festlegen .
<img src="https://i.stack.imgur.com/RJj4x.png" class="centerAlign small">
5. Konsolidieren Sie allgemeine Einstellungen in CSS-Klassen:
Der letzte Trick ist einer, den ich in dieser Antwort hier gelernt habe: Wie kann ich CSS verwenden, um mehrere Bilder unterschiedlich zu gestalten? . Wie Sie oben sehen können, setzen alle drei CSS- align
Klassen die Bildbreite auf 60%. Daher kann diese allgemeine Einstellung auf einmal wie folgt festgelegt werden. Anschließend können Sie die spezifischen Einstellungen für jede Klasse festlegen:
<style>
/* set common properties for multiple CSS classes all at once */
.centerAlign, .leftAlign, .rightAlign {
width:60%;
}
/* Now set the specific properties for each class individually */
/* Create a CSS class to style images to center-align */
.centerAlign
{
display:block;
float:none;
/* Set both the left and right margins to `auto` to cause the image to be centered. */
margin-left:auto;
margin-right:auto;
}
/* Create a CSS class to style images to left-align, or "float left" */
.leftAlign
{
display:inline-block;
float:left;
/* provide a 15 pixel gap between the image and the text to its right */
margin-right:15px;
}
/* Create a CSS class to style images to right-align, or "float right" */
.rightAlign
{
display:inline-block;
float:right;
/* provide a 15 pixel gap between the image and the text to its left */
margin-left:15px;
}
/* custom CSS class to set a predefined "small" size for an image */
.small
{
width:20%;
/* set any other properties, as desired, inside this class too */
}
</style>
Mehr Details:
1. Meine Gedanken zu HTML und CSS in Markdown
Für mich ist alles, was in ein Markdown-Dokument geschrieben werden kann, um das gewünschte Ergebnis zu erzielen, alles, was wir suchen, nicht irgendeine "reine Markdown" -Syntax.
In C und C ++ wird der Compiler bis zum Assemblycode kompiliert, und die Assembly wird dann bis zum Binärcode zusammengesetzt. Manchmal benötigen Sie jedoch das Low-Level-Steuerelement, das nur Assembly bereitstellen kann, damit Sie Inline-Assemblys direkt in eine C- oder C ++ - Quelldatei schreiben können. Assembly ist die Sprache der "unteren Ebene" und kann direkt in C und C ++ geschrieben werden.
So ist es auch mit dem Abschlag. Markdown ist die Hochsprache, die bis zu HTML und CSS interpretiert wird. Wenn wir jedoch zusätzliche Kontrolle benötigen, können wir HTML und CSS auf niedrigerer Ebene direkt in unsere Markdown-Datei "einbinden", und es wird weiterhin korrekt interpretiert. In gewissem Sinne sind HTML und CSS daher eine gültige "Markdown" -Syntax.
Verwenden Sie HTML und CSS, um ein Bild in Markdown zu zentrieren.
2. Einfügen von Standardbildern in Markdown:
So fügen Sie ein Basisbild in Markdown mit der Standard-HTML- und CSS-Formatierung "hinter den Kulissen" hinzu:
Dieser Abschlag:
![](https://i.stack.imgur.com/RJj4x.png)
Wird diese Ausgabe erzeugen:
Dies ist mein Feuer schießender Hexacopter, den ich gemacht habe .
Optional können Sie auch eine Beschreibung in die öffnenden eckigen Klammern einfügen. Ehrlich gesagt bin ich nicht einmal sicher , was das tut, aber vielleicht wird es in ein umgewandelten HTML - <img>
Element - alt
Attribut , das das Bild im Fall angezeigt wird kann nicht geladen werden , und kann von Screenreadern für Blinde gelesen werden. Also, dieser Abschlag:
![this is my hexacopter I built](https://i.stack.imgur.com/RJj4x.png)
wird auch diese Ausgabe erzeugen:
3. Weitere Details zu den Vorgängen in HTML / CSS beim Zentrieren und Ändern der Bildgröße in Markdown:
Um das Bild in Markdown zu zentrieren, müssen wir das zusätzliche Steuerelement verwenden, das HTML und CSS uns direkt geben können. Sie können ein einzelnes Bild wie folgt einfügen und zentrieren:
<img src="https://i.stack.imgur.com/RJj4x.png"
alt="this is my hexacopter I built"
style="display:block;
float:none;
margin-left:auto;
margin-right:auto;
">
Hier gibt es mehr Infos. auf was hier los ist:
- Der
<img
Teil des obigen Codes ist das HTML " Start-Tag ", während das >
am Ende das HTML " End-Tag " ist.
- Alles vom Start-Tag bis zum End-Tag, einschließlich, macht dieses HTML-
img
" Element " aus.
- HTML
img
"Tags" / "Elemente" werden verwendet, um Bilder in HTML einzufügen.
- Jede der Zuweisungen innerhalb des Elements konfiguriert ein HTML- " Attribut ".
- Das Attribut "style" akzeptiert das CSS-Styling , daher ist alles, was hier in doppelten Anführungszeichen
style=""
steht, eine CSS- property:value
Schlüsselwert- " Deklaration ".
- Beachten Sie, dass jede CSS- "Eigenschaft: Wertdeklaration" durch ein Semikolon (
;
) getrennt ist, während jedes HTML- "Attribut" in diesem "Element" durch ein Leerzeichen (
) getrennt ist.
- Damit das Bild in unserem obigen HTML- und CSS-Code zentriert wird, sind die wichtigsten "Attribute" einfach die
src
und style
.
- Der
alt
eine ist optional.
- Innerhalb des HTML -
style
Attribut, das CSS Styling übernimmt, sind die wichtigsten Erklärungen alle 4 , dass ich zeigen: display:block
, float:none
, margin-left:auto
, und margin-right:auto
.
- Wenn die
float
Eigenschaft zuvor noch nicht festgelegt wurde, können Sie diese Deklaration weglassen, aber es ist eine gute Idee, sie trotzdem für alle Fälle zu haben.
- Wenn Sie zuerst gelernt haben, wie Sie ein Bild mit HTML und CSS zentrieren, finden Sie hier: https://www.w3schools.com/howto/howto_css_image_center.asp .
- CSS verwendet Kommentare im C-Stil (
/* my comment */
).
Verweise:
- Weitere Informationen zur CSS-Syntax finden Sie hier: https://www.w3schools.com/css/css_syntax.asp
- Lesen Sie hier mehr über "HTML Tags vs Elements" .
- Ich habe einen Großteil meiner HTML- und CSS-Styling-Übungen in meiner GitHub-Markdown-Readme-Datei hier durchgeführt: https://github.com/ElectricRCAircraftGuy/Arduino-STEM-Presentation
- Ich habe fast alles gelernt, was ich über HTML und CSS weiß, indem ich auf w3schools.com herumgeklickt habe. Hier sind einige spezifische Seiten:
- %%%%% https://www.w3schools.com/howto/howto_css_image_center.asp
- https://www.w3schools.com/css/css_float.asp
- https://www.w3schools.com/css/tryit.asp?filename=trycss_layout_float2
- https://www.w3schools.com/css/css3_images.asp
- https://www.w3schools.com/tags/default.asp
- HTML- und CSS-Kommentare: https://www.w3schools.com/css/css_comments.asp
- Mein Feuer schießender Hexacopter, den ich gemacht habe: https://www.electricrcaircraftguy.com/2016/05/battlebots-season-2-buzz-fire-drone.html