gaspard
(gaspard)
Janvier 20, 2025, 8:13
1
Bonjour, dans mon site SPIP, en fonction des cas, je souhaites afficher certaines images avec des srcset, et dans d’autres cas grâce à du javascript.
Dans mon squelette /src/squelettes/image_responsive.html
je ne spécifie pas de width ni height.
<img
src="#GET{pico_fichier}"
[ alt="(#TITRE|attribut_html)"]
data-ratio="#GET{ratio}"
loading="lazy"
srcset="[(#GET{s_fichier}) 500w,] [(#GET{m_fichier}) 1200w,] #GET{l_fichier} 1530w, #GET{xl_fichier} 2000w"
data-locked="no">
Pourtant, dans le HTML généré, width et height sont ajoutés
<img
src="local/cache-vignettes/L10xH13/20181124_olives-2b885-027b0.jpg?1736951826"
alt="Les goutelettes de rosée sur les feuilles"
data-ratio="0.75"
loading="lazy"
srcset="local/cache-vignettes/L400xH533/20181124_olives-34b00.jpg?1736951733 500w, local/cache-vignettes/L1200xH1600/20181124_olives-07d35.jpg?1736951825 1200w, local/cache-vignettes/L1530xH2040/20181124_olives-a5e04.jpg?17369518251530w, local/cache-vignettes/L2000xH2667/20181124_olives-f30ce.jpg?17369518262000w"
data-locked="no"
width='10' height='13' />
Ça ne m’arrange pas parce que:
ça m’oblige à passer par javascript pour spécifier la taille définitive
ça rend mal en espace privé.
Est-ce qu’il serait possible d’empêcher l’ajout de width et height?
gaspard
(gaspard)
Janvier 20, 2025, 8:18
2
Pour voir le code source complet de l’exemple ci-dessus (ou si vous voulez reproduire), il est disponible sur ce dépot github .
Je constate que si dans le squelette directement (et donc pas dans un corps de texte) je crée une image, width & height ne s’ajoutent pas automatiquement.
Par exemple (code source dans son contexte dispo sur le dépot git )
<img alt="document thumbnail" src='#GET{pico_fichier}' style="width: 400px">
est rendu en html
<img alt="document thumbnail" src='local/cache-vignettes/L10xH8/p2220765-5167a.jpg?1736935447' style="width: 400px">
b_b
Janvier 21, 2025, 9:32
3
Il est possible que ces attributs soient ajoutés car le filtre image_reduire est appliqué au texte (ce qui est le cas dans l’espace privé). Tu as testé dans un squelette public pour voir si le problème est le même ?
gaspard
(gaspard)
Janvier 23, 2025, 8:22
4
Oui, @b_b , c’est clairement lié.
Si j’ajoute ce code dans mon sommaire.html les width et height ne sont pas ajoutés
<BOUCLE_d(DOCUMENTS){0,10}>
<div>#TITRE #ID_DOCUMENT</div>
<INCLURE{fond=modeles/image_responsive, id=#ID_DOCUMENT} />
</BOUCLE_d>
alors que quand j’ajoute <img4119|responsive>
dans le texte de mon article, les width et height sont ajoutés.
Comment faire pour qu’ils ne soient pas ajoutés quand j’utilise ce modèle?
b_b
Janvier 23, 2025, 12:46
5
Il suffit de retirer le filtre |image_reduire
qui est appliqué au #TEXTE
dans tes squelettes articles, exemple avec la dist ça se passe ici article.html · c9c31ab1a650717b1e4afe99f35475b292380d7d · spip / dist · GitLab
gaspard
(gaspard)
Janvier 24, 2025, 8:36
6
Merci pour ta réponse, c’est super, ça corrige mon problème pour l’espace public!