Как сделать ширину figure под ширину картинки, а не figcaption

12
A9
На сайте с 19.03.2018
Offline
74
194
<figure class="img_wrap x">
<picture>
<source type="image/jpeg" srcset="https://tovarisruk.ru/images/articles/small/12/369.jpg 240w" sizes="(max-width: 400px) 240px, (max-width: 600px) 240px, (max-width: 800px) 240px, (max-width: 1000px) 240px, (min-width: 1001px) 240px">
<img src="https://tovarisruk.ru/images/articles/small/12/369.jpg" alt="Начинаем беседу в чате с намерением приехать или нажимаем кнопку позвонить, чтобы появился номер.">
</picture>
<figcaption class="img_alt">Начинаем беседу в чате с намерением приехать или нажимаем кнопку позвонить, чтобы появился номер.</figcaption>
</figure>


Как видим, figure вытягивается по ширине надписи. Ширина картинки может быть любой (в том числе и больше ширины зоны контента). Как бы так хитро сделать без скриптов, чтобы figure был по ширине изображения, а figcaption подстраивался под эту ширину, а не вытягивался во всю строку?

W1
На сайте с 22.01.2021
Offline
296
#1
aramid92 :
Как бы так хитро сделать без скриптов

А зачем тут хитрить и зачем тут скрипты? Стили пишутся с помощью CSS.

Мой форум - https://webinfo.guru –Там я всегда на связи
A9
На сайте с 19.03.2018
Offline
74
#2
webinfo #:

А зачем тут хитрить и зачем тут скрипты? Стили пишутся с помощью CSS.

Ну. И как сделать с помощью стилей? Сейчас figure вытягивается по ширине figcaption (шире картинки). А мне надо, чтобы figcaption была не шире картинки.

P.S. Нашел, сам бы не догадался до такого.

figure {display:table}

figcaption{display:table-caption;caption-side:bottom;}

W1
На сайте с 22.01.2021
Offline
296
#3
aramid92 #:

Ну. И как сделать с помощью стилей?

Ну. И задайте элементу figure ту ширину, которая требуется.

aramid92 #:
Сейчас figure вытягивается по ширине figcaption

Это не так.

W1
На сайте с 22.01.2021
Offline
296
#4
aramid92 #:

P.S. Нашел, сам бы не догадался до такого.

figure {display:table}

figcaption{display:table-caption;caption-side:bottom;}

Я тоже до этого не догадался бы, к счастью. Поскольку использую табличную вёрстку по прямому назначению.
Но в принципе сойдёт, если устроит то, что ширина картинки будет скакать , то больше, то меньше.

A9
На сайте с 19.03.2018
Offline
74
#5
webinfo #:

Я тоже до этого не догадался бы, к счастью. Поскольку использую табличную вёрстку по прямому назначению.
Но в принципе сойдёт, если устроит то, что ширина картинки будет скакать , то больше, то меньше.

ширина картинки неизвестна - любая может быть, написал в самом начале. Может быть узкая и длинная, может быть низкая и широченная.

W1
На сайте с 22.01.2021
Offline
296
#6
aramid92 #:

ширина картинки неизвестна - любая может быть, написал в самом начале.

Я читал это в самом начале. Но это не значит, что вы не можете прописать нужную ширину картинки. Однако это дело вкуса: ширина картинки, ширина блока с картинкой, ширина надписи под картинкой, расположение картинки в родительском элементе. Но это в любом случае надо ограничить:

aramid92 :
в том числе и больше ширины зоны контента
D.iK.iJ
На сайте с 26.05.2013
Offline
225
#7

Я бы тогда уж попробовал для  figure поставить  display: inline-block;

А, нет. Ошибся. Он тоже растягивается текстом. Тогда таблицы - самое простое.

Адаптивный дизайн в 2 строчки ( https://dikij.com/wm/adaptaciya-saytov.php ). + Принимаю заказы любой сложности ( https://searchengines.guru/ru/forum/926323 ). 💎 Еще я делаю классные кулоны с опалами ( https://mosaicopal.ru/ ).
W1
На сайте с 22.01.2021
Offline
296
#8
D.iK.iJ #:
Он тоже растягивается текстом.

Да не растягивается он текстом. Он растягивается на всю ширину родительского блока.

P
На сайте с 26.04.2010
Offline
349
#9
webinfo #:
Но это не значит, что вы не можете прописать нужную ширину картинки.
webinfo #:
А зачем тут хитрить и зачем тут скрипты? Стили пишутся с помощью CSS.

Чтобы получить заранее неизвестные размеры изображения, как раз и нужен скрипт.

Когда значения будут получены, они присваиваются соответствующим атрибутам ширины и высоты figure.

W1
На сайте с 22.01.2021
Offline
296
#10
plab #:

Чтобы получить заранее неизвестные размеры изображения, как раз и нужен скрипт.

Когда значения будут получены, они присваиваются соответствующим атрибутам ширины и высоты figure.

Это ты меня учить будешь? Так я это и без тебя знаю.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий