Remove the .figure__container element. According to Tess, putting a <figcaption> inside a child of a <figure> "doesn't obey the content model" or some shit. Fiiiiine. Getting small figures to lay out the way I want them to without the container was a bit of a trick. Instead of letting the figure span the entire width of the grid column, let it fit the size of its contents, and then set margin-inline to auto so it centers. Doing this also allowed me to remove the .figure--image, etc styles because the styles and markup are a lot more similar among figures containing different kinds of elements. Nice!
27 lines
775 B
HTML
27 lines
775 B
HTML
{{- $image := .resource -}}
|
|
|
|
{{-
|
|
$resizedImages := dict
|
|
"2x" ($image.Fit "960x960")
|
|
"1x" ($image.Fit "480x480")
|
|
-}}
|
|
|
|
<figure class="figure figure--image figure--small">
|
|
{{ if .linksToFullSizeImage -}}
|
|
<a href="{{ $image.RelPermalink }}">
|
|
{{- end -}}
|
|
<img
|
|
src="{{ (index $resizedImages "2x").RelPermalink }}"
|
|
srcset="
|
|
{{ (index $resizedImages "2x").RelPermalink }} 960w,
|
|
{{ (index $resizedImages "1x").RelPermalink }} 480w,
|
|
"
|
|
{{ with $image.Params.alt | default $image.Title }} alt="{{ . }}"{{ end }}
|
|
{{ with $image.Title }} title="{{ . }}"{{ end }}>
|
|
{{ if .linksToFullSizeImage -}}
|
|
</a>
|
|
{{- end -}}
|
|
{{ if .shouldShowTitle }}
|
|
{{ partial "page/figures/caption.html" . }}
|
|
{{ end }}
|
|
</figure>
|