Istnieją dwa poprawne semantycznie rozwiązania tego pytania:
- Korzystanie z wtyczki
- Tworzenie niestandardowego pliku dołączanego
1. Korzystanie z wtyczki
Wypróbowałem kilka wtyczek, które to robią, a moim ulubionym jestjekyll-figure
.
1.1. zainstalowaćjekyll-figure
Jednym ze sposobów instalacji jekyll-figure
jest dodanie gem "jekyll-figure"
do pliku Gemfile w grupie wtyczek.
Następnie uruchom bundle install
z okna terminala.
1.2. Posługiwać sięjekyll-figure
Po prostu zawiń przecenę {% figure %}
i {% endfigure %}
oznacz.
Twój podpis pojawia się w otwierającym {% figure %}
tagu, a nawet możesz go stylizować za pomocą przeceny!
Przykład:
{% figure caption:"Le logo de **Jekyll** et son clin d'oeil à Robert Louis Stevenson" %}
![Le logo de Jekyll](/assets/images/2018-08-07-jekyll-logo.png)
{% endfigure %}
1.3. Styl to
Teraz, gdy twoje obrazy i podpisy są semantycznie poprawne, możesz zastosować CSS, jak chcesz:
figure
(dla obrazu i podpisu)
figure img
(tylko dla obrazu)
figcaption
(tylko do podpisów)
2. Tworzenie dołączenia niestandardowego
Musisz utworzyć image.html
plik w swoim _includes
folderze i dołączyć go za pomocą Liquid w Markdown .
2.1. Utwórz _includes / image.html
Utwórz image.html
dokument w swoim folderze _includes:
<!-- _includes/image.html -->
<figure>
{% if include.url %}
<a href="{{ include.url }}">
{% endif %}
<img
{% if include.srcabs %}
src="{{ include.srcabs }}"
{% else %}
src="{{ site.baseurl }}/assets/images/{{ include.src }}"
{% endif %}
alt="{{ include.alt }}">
{% if include.url %}
</a>
{% endif %}
{% if include.caption %}
<figcaption>{{ include.caption }}</figcaption>
{% endif %}
</figure>
2.2. W Markdown dołącz obraz za pomocą Liquid
Obraz /assets/images
z podpisem:
This is [Jekyll](https://jekyllrb.com)'s logo :
{% include image.html
src="jekyll-logo.png" <!-- image filename (placed in /assets/images) -->
alt="Jekyll's logo" <!-- alt text -->
caption="This is Jekyll's logo, featuring Dr. Jekyll's serum!" <!-- Caption -->
%}
Obraz (zewnętrzny) używający bezwzględnego adresu URL: (zmień src=""
na srcabs=""
)
This is [Jekyll](https://jekyllrb.com)'s logo :
{% include image.html
srcabs="https://jekyllrb.com/img/logo-2x.png" <!-- absolute URL to image file -->
alt="Jekyll's logo" <!-- alt text -->
caption="This is Jekyll's logo, featuring Dr. Jekyll's serum!" <!-- Caption -->
%}
Klikalny obraz: (dodaj url=""
argument)
This is [Jekyll](https://jekyllrb.com)'s logo :
{% include image.html
src="https://jekyllrb.com/img/logo-2x.png" <!-- absolute URL to image file -->
url="https://jekyllrb.com" <!-- destination url -->
alt="Jekyll's logo" <!-- alt text -->
caption="This is Jekyll's logo, featuring Dr. Jekyll's serum!" <!-- Caption -->
%}
Obraz bez podpisu:
This is [Jekyll](https://jekyllrb.com)'s logo :
{% include image.html
src="https://jekyllrb.com/img/logo-2x.png" <!-- absolute URL to image file -->
alt="Jekyll's logo" <!-- alt text -->
%}
2.3. Styl to
Teraz, gdy twoje obrazy i podpisy są semantycznie poprawne, możesz zastosować CSS, jak chcesz:
figure
(dla obrazu i podpisu)
figure img
(tylko dla obrazu)
figcaption
(tylko do podpisów)
site_root
nie jest akceptowana jako prawidłowa zmienna. Po renderowaniu kończy się jakosrc="{{ site.url_root }}...
.