Ich hoste einen Jekyll-Blog auf Github und schreibe meine Beiträge mit Markdown. Wenn ich Bilder hinzufüge, gehe ich folgendermaßen vor:
![name of the image](http://link.com/image.jpg)
Dies zeigt dann das Bild im Text.
Wie kann ich Markdown jedoch anweisen, eine Beschriftung hinzuzufügen, die unter oder über dem Bild angezeigt wird?
site_root
jedoch nicht als gültige Variable akzeptiert. Wenn es gerendert wird, endet es alssrc="{{ site.url_root }}...
.site.url
Variable.<figure class="image"><img src="{{ include.url }}" alt="{{ include.description }}"><figcaption>{{ include.description }}</figcaption></figure>
include image.html
. Ich versuche es mit so etwas wie{% for image in page.images %}
aber ohne Erfolg. Können Sie mir helfen?Ich weiß, dass dies eine alte Frage ist, aber ich dachte, ich würde immer noch meine Methode zum Hinzufügen von Bildunterschriften teilen. Sie können die Tags
caption
oder nicht verwendenfigcaption
, dies wäre jedoch eine einfache Alternative, ohne Plugins zu verwenden.In Ihrem Markdown können Sie Ihre Beschriftung mit dem Hervorhebungs-Tag umschließen und direkt unter das Bild einfügen, ohne eine neue Zeile wie folgt einzufügen:
Dies würde den folgenden HTML-Code generieren:
Dann können Sie es in Ihrem CSS mit dem folgenden Selektor formatieren, ohne andere
em
Tags auf der Seite zu beeinträchtigen :Beachten Sie, dass zwischen dem Bild und der Beschriftung keine Leerzeile stehen darf, da dies stattdessen Folgendes erzeugen würde:
Sie können auch ein beliebiges anderes Tag als verwenden
em
. Stellen Sie einfach sicher, dass ein Tag vorhanden ist, da Sie es sonst nicht formatieren können.quelle
<link href="{{ site.baseurl }}/assets/css/main.css" rel="stylesheet">
sodass ich einfach meine benutzerdefinierte CSS-Definition am Ende dieser Datei hinzufüge:// My custom css img + em { display: block; text-align: center; } //image captions
Sie können hierfür eine Tabelle verwenden. Es funktioniert gut.
Ergebnis:
quelle
Der richtige HTML-Code für Bilder mit Untertiteln ist
<figure>
mit<figcaption>
.Hierfür gibt es kein Markdown-Äquivalent. Wenn Sie also nur gelegentlich Untertitel hinzufügen, empfehlen wir Ihnen, diesen HTML-Code einfach in Ihr Markdown-Dokument einzufügen:
Die Markdown-Spezifikation empfiehlt Ihnen, HTML in solchen Fällen einzubetten, damit es einwandfrei angezeigt wird. Es ist auch viel einfacher als mit Plugins herumzuspielen.
Wenn Sie versuchen, andere Markdown-y-Funktionen (wie Tabellen, Sternchen usw.) zu verwenden, um Untertitel zu erstellen, hacken Sie nur herum, wie Markdown verwendet werden sollte.
quelle
Ein leichtes Riff in der obersten Antwort , das ich als etwas expliziter empfunden habe, ist, die Jekyll-Syntax zu verwenden, um einer Klasse eine Klasse hinzuzufügen und sie dann so zu gestalten.
Also in der Post hätten Sie:
Und dann können Sie in Ihrer CSS-Datei Folgendes tun:
Kommt gut aus!
quelle
Für diese Frage gibt es zwei semantisch korrekte Lösungen:
1. Verwenden eines Plugins
Ich habe ein paar Plugins ausprobiert und mein Favorit ist
jekyll-figure
.1.1. Installieren
jekyll-figure
Eine Möglichkeit zur Installation
jekyll-figure
besteht daringem "jekyll-figure"
, Ihrem Gemfile in Ihrer Plugins-Gruppe etwas hinzuzufügen .Führen Sie dann
bundle install
von Ihrem Terminalfenster aus.1.2. Verwenden
jekyll-figure
Wickeln Sie einfach Ihren Abschlag in
{% figure %}
und{% endfigure %}
Tags ein.Ihre Beschriftung wird in das Eröffnungs-
{% figure %}
Tag eingefügt, und Sie können sie sogar mit Abschriften versehen!Beispiel:
1.3. Stylen Sie es
Nachdem Ihre Bilder und Bildunterschriften semantisch korrekt sind, können Sie CSS wie gewünscht anwenden:
figure
(für Bild und Bildunterschrift)figure img
(nur für Bild)figcaption
(nur zur Beschriftung)2. Erstellen eines benutzerdefinierten Includes
Sie müssen eine
image.html
Datei in Ihrem_includes
Ordner erstellen und diese mit Liquid in Markdown einfügen .2.1. Erstellen Sie _includes / image.html
Erstellen Sie das
image.html
Dokument in Ihrem Ordner _includes:2.2. Fügen Sie in Markdown ein Bild mit Liquid ein
Ein Bild
/assets/images
mit einer Bildunterschrift:Ein (externes) Bild mit einer absoluten URL: (ändern
src=""
zusrcabs=""
)Ein anklickbares Bild: (
url=""
Argument hinzufügen )Ein Bild ohne Bildunterschrift:
2.3. Stylen Sie es
Nachdem Ihre Bilder und Bildunterschriften semantisch korrekt sind, können Sie CSS wie gewünscht anwenden:
figure
(für Bild und Bildunterschrift)figure img
(nur für Bild)figcaption
(nur zur Beschriftung)quelle
Sie können versuchen,
pandoc
als Konverter zu verwenden. Hier ist ein Jekyll-Plugin , um dies zu implementieren. Pandocalt
kann automatisch eine Bildunterschrift hinzufügen, die Ihrem Attribut entspricht.Sie müssen die kompilierte Site jedoch pushen, da Github aus Sicherheitsgründen keine Plugins auf Github-Seiten zulässt.
quelle
Andrews @ andrew-wei Antwort funktioniert großartig. Sie können auch einige miteinander verketten, je nachdem, was Sie versuchen. Auf diese Weise erhalten Sie beispielsweise ein Bild mit Alt, Titel und Beschriftung mit Zeilenumbruch sowie Fett- und Kursivschrift in verschiedenen Teilen der Beschriftung:
Mit folgendem
<img>
Preisnachlass:quelle
Das ist die grundlegende Verwendung von Untertiteln. Es ist nicht erforderlich, ein zusätzliches Plugin zu verwenden.
quelle
Hier ist die einfachste (aber nicht schönste) Lösung: Machen Sie einen Tisch um das Ganze. Es gibt offensichtlich Skalierungsprobleme, und deshalb gebe ich mein Beispiel mit dem HTML, damit Sie die Bildgröße leicht ändern können. Das hat bei mir funktioniert.
quelle