Є два семантично правильних рішення цього питання:
- Використання плагіна
- Створення користувальницької включати
1. Використання плагіна
Я спробував пару плагінів, роблячи це, і мій улюбленийjekyll-figure
.
1.1. Встановитиjekyll-figure
Один із способів встановлення jekyll-figure
- це додавання gem "jekyll-figure"
до вашого Gemfile у групі плагінів.
Потім запустіть bundle install
з вікна вашого терміналу.
1.2. Використовуйтеjekyll-figure
Просто загорніть позначку {% figure %}
та {% endfigure %}
позначки.
Підпис міститься в {% figure %}
тезі, що відкривається , і ви навіть можете стилізувати його за допомогою розмітки!
Приклад:
{% 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. Стиль це
Тепер, коли ваші зображення та підписи є семантично правильними, ви можете застосувати CSS так, як хочете:
figure
(як для зображення, так і для підпису)
figure img
(лише для зображення)
figcaption
(лише для підписів)
2. Створення користувальницької включати
Вам потрібно буде створити image.html
файл у своїй _includes
папці та включити його за допомогою рідини в Markdown .
2.1. Створіть _includes / image.html
Створіть image.html
документ у папці _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. У розмітку додайте зображення за допомогою рідини
Зображення /assets/images
з підписом:
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 -->
%}
Зовнішнє зображення з абсолютною URL-адресою: (змінити src=""
на 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 -->
%}
Зображення, яке можна натиснути: (додати url=""
аргумент)
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 -->
%}
Зображення без підпису:
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. Стиль це
Тепер, коли ваші зображення та підписи є семантично правильними, ви можете застосувати CSS так, як хочете:
figure
(як для зображення, так і для підпису)
figure img
(лише для зображення)
figcaption
(лише для підписів)
site_root
не приймається як дійсна змінна. Коли він відображається, він закінчується якsrc="{{ site.url_root }}...
.