<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<atom:link href="https://forum.alsacreations.com/rss2.php" rel="self" type="application/rss+xml" />
<title>Forum Alsacreations : HTML, CSS, JavaScript et Standards Web</title>
<description>Forum Alsacreations : HTML, CSS, JavaScript et Standards Web - Derniers sujets</description>
<link>https://forum.alsacreations.com</link>
	<item>
		<title>Créer le contenu avant le contenant, le sens avant l'apparence.</title>
		<description>Bonjour, 
J'ai inventé un truc, je le nomme rhizome314r et il fonctionne très bien. 
Je débute dans votre communauté et je voudrais avoir vos réactions non pas à mon invention mais</description>
		<content:encoded>Bonjour, 
J'ai inventé un truc, je le nomme rhizome314r et il fonctionne très bien. 
Je débute dans votre communauté et je voudrais avoir vos réactions non pas à mon invention mais à ce que je réussis à en dire. Mon objectif est de sonder une communauté de gens qui codent en HTML et CSS pour voir si mon projet pourrait intéresser d'autres individus que moi. 

J'ai utilisé des centaines de fois les réponses trouvées par Google dans la communauté Alsacréations il y a longtemps. Je n'avais jamais osé m'inscrire mais bon, je l'ai fait 

Alors voilà je dépose mon texte non parfait pour avoir vos réactions. Votre avis?

_____

rhizome314r est destiné aux personnes qui souhaitent construire leur propre environnement de création sans adopter celui d'un autre.

Si construire fait partie de l'œuvre pour vous, rhizome314r vous conviendra. Si vous cherchez principalement un résultat rapide, d'autres outils répondront mieux à vos besoins.

_____

QU'EST rhizome314r

rhizome314r est un noyau de création Web fondé sur HTML5 et CSS (codé en PHP) qui retire les structures répétitives afin de permettre au webmestre de travailler directement sur le contenu, sa sémantique et sa présentation.

Le Web moderne exige des créateurs de sites Web qu'ils composent avec un environnement avant de pouvoir créer.

rhizome314r adopte une approche différente.

Le webmestre dépose d'abord le contenu dans l'éditeur de code de son choix. Un mot, une phrase ou un média peuvent être affichés immédiatement dans le navigateur. Il choisit ensuite le contenant sémantique approprié puis en compose la présentation.

Le contenu précède la structure. Le sens précède l'apparence. La sémantique précède la mise en page.

Les balises HTML servent à décrire la nature d'une information. Le CSS sert à définir son apparence, son positionnement et son comportement.

Le noyau prend en charge les structures HTML répétitives et les couches techniques récurrentes afin que l'attention demeure concentrée sur le contenu, les entités et leurs relations.

Aucune couche supplémentaire de connaissances n'est nécessaire. Si vous connaissez déjà HTML5 et CSS, vous connaissez déjà l'essentiel.

Les compétences développées avec rhizome314r demeurent utiles partout où HTML et CSS sont utilisés.

rhizome314r réduit la distance entre ce que le webmestre souhaite exprimer et ce qui apparaît dans le navigateur.

L'objectif n'est pas d'ajouter une nouvelle complexité au Web, mais d'en retirer le plus possible.

---

Les structures rhizome314r demeurent greffables à toutes les échelles.

Dans la plupart des architectures Web, les pages, les sections et les sites sont conçus comme des ensembles terminés. Une fois réalisés, ils remplissent leur fonction mais demeurent généralement dépendants de leur environnement d'origine.

rhizome314r adopte une approche différente.

Chaque structure est conçue pour conserver sa capacité à accueillir, recevoir, transmettre ou être accueillie par une autre structure sans devoir être reconstruite.

Un domaine peut accueillir un autre domaine. Une branche peut devenir un arbre. Un arbre peut devenir une branche. Une structure simple peut devenir un ensemble complexe. Un ensemble complexe peut être réutilisé comme simple composant d'un autre ensemble.

L'échelle change. La nature de la structure demeure.

Cette continuité est rendue possible par l'absence de dépendances architecturales imposées entre les entités. Chaque élément conserve une autonomie suffisante pour être déplacé, recomposé ou intégré ailleurs sans remettre en cause son organisation fondamentale.

Une structure issue d'une greffe conserve elle-même la capacité de participer à de nouvelles greffes.

Les relations peuvent ainsi se multiplier sans nécessiter de reconstruction complète des éléments déjà existants.

Le résultat n'est pas une accumulation de couches mais un réseau d'entités capables de se recevoir mutuellement tout en conservant leurs fonctions respectives.

Chaque site réalisé avec rhizome314r conserve sa capacité à recevoir, transmettre, accueillir et être accueilli sans perdre cette faculté.

Aucune structure n'est considérée comme définitive.

Aucune architecture n'est considérée comme terminale.

Rien n'est jamais terminé.

Tout demeure greffable.


---

_Plus rien à retirer = équilibre._ Modifié par 314r (31 May 2026 - 13:43)</content:encoded>
		<dc:date>2026-05-31T07:30:29+02:00</dc:date>
		<dc:creator>314r</dc:creator>
		<dc:subject>Créer le contenu avant le contenant, le sens avant l'apparence.</dc:subject>
		<link>https://forum.alsacreations.com/topic-2-91680-1.html</link>
		<guid>https://forum.alsacreations.com/topic-2-91680-1.html</guid>
	</item>
	<item>
		<title>Claude Code en ligne de commande</title>
		<description>Salut à tous,

Je bosse sur plusieurs projets web (Laravel/Vue.js) et j'ai testé récemment Claude Code, l'outil CLI d'Anthropic qui permet d'utiliser Claude directement dans le terminal</description>
		<content:encoded>Salut à tous,

Je bosse sur plusieurs projets web (Laravel/Vue.js) et j'ai testé récemment Claude Code, l'outil CLI d'Anthropic qui permet d'utiliser Claude directement dans le terminal pour de l'assistance au code.

Ce qui m'a surpris c'est la qualité de compréhension du contexte projet, il lit les fichiers, navigue dans l'arborescence et peut modifier du code directement. C'est pas juste un chatbot avec du code dedans.

Le truc à savoir : l'installation via npm est dépréciée, faut passer par l'installateur natif maintenant.

Vous avez testé des outils IA en ligne de commande dans votre workflow ? Cursor, Copilot CLI, autre chose ? Modifié par minicaptus (29 May 2026 - 12:04)</content:encoded>
		<dc:date>2026-05-29T12:02:10+02:00</dc:date>
		<dc:creator>minicaptus</dc:creator>
		<dc:subject>Claude Code en ligne de commande</dc:subject>
		<link>https://forum.alsacreations.com/topic-9-91678-1.html</link>
		<guid>https://forum.alsacreations.com/topic-9-91678-1.html</guid>
	</item>
	<item>
		<title>View transition : Retours d'expérience sur un projet dynamique</title>
		<description>Salut tout le monde,

J'ai fait quelques tests avec l'API des View Transitions sur un projet « bac à sable » Flask.

Je sais que le support des navigateurs est encore partiel</description>
		<content:encoded>Salut tout le monde,

J'ai fait quelques tests avec l'API des View Transitions sur un projet « bac à sable » Flask.

Je sais que le support des navigateurs est encore partiel , mais je me suis dit que ce n'était pas un problème : au pire, on est pile dans le concept d'amélioration progressive.

Le problème, c'est que de mon côté, le rendu n'est pas du tout convaincant.

Alors qu'en local sur des fichiers HTML plats (ou via un bête python -m http.server), le pré-rendu et les transitions sont d'une fluidité absolue (façon SPA), dès que ça tourne derrière Flask ou autres, le comportement devient super instable : j'ai des micros-saccades, des silent discards (le navigateur qui jette la page pré-rendue au dernier moment) ou des transitions qui sautent au clic.

J'ai essayé de creuser (middlewares asynchrones avec gevent / Gunicorn, nettoyage des en-têtes HTTP comme Vary, forçage du cache), mais le navigateur semble hyper capricieux dès qu'il communique avec un serveur dynamique plutôt qu'avec du statique pur.

Du coup, je serais curieux d'avoir vos retours : avez-vous expérimenté le sujet en dehors de fichiers HTML plats ? Vous avez réussi à avoir un truc stable et fluide sur un environnement de dev dynamique ?

Merci d'avance pour vos lumières !

ps : En attendant, j'utilise d'autres solutions. Mais j'aimerais passer en natif Modifié par Niuxe (26 May 2026 - 23:50)</content:encoded>
		<dc:date>2026-05-26T23:47:36+02:00</dc:date>
		<dc:creator>Niuxe</dc:creator>
		<dc:subject>View transition : Retours d'expérience sur un projet dynamique</dc:subject>
		<link>https://forum.alsacreations.com/topic-4-91677-1.html</link>
		<guid>https://forum.alsacreations.com/topic-4-91677-1.html</guid>
	</item>
	<item>
		<title>[Résolu] En PHP j'ai une fonction de 2 aray ?RTETURN</title>
		<description>bonjour je ne comprend pas la syntaxe en PHP 5 local
dans une fonction, je ne peux pas faire mon 
return ($la1,$La2);  sachant que ce sont version PHP 5 deux array, merci d'avance</description>
		<content:encoded>bonjour je ne comprend pas la syntaxe en PHP 5 local
dans une fonction, je ne peux pas faire mon 
return ($la1,$La2);  sachant que ce sont version PHP 5 deux array, merci d'avance</content:encoded>
		<dc:date>2026-05-23T17:03:21+02:00</dc:date>
		<dc:creator>Fox-infograp</dc:creator>
		<dc:subject>[Résolu] En PHP j'ai une fonction de 2 aray ?RTETURN</dc:subject>
		<link>https://forum.alsacreations.com/topic-1-91676-1.html</link>
		<guid>https://forum.alsacreations.com/topic-1-91676-1.html</guid>
	</item>
	<item>
		<title>Serveur de mails</title>
		<description>Bonjour,
une personne ici a déjà installé un serveur de mail personnel (sur son ordinateur) ?
Les filtres antispams de mon fournisseur étant parfois stricts et pas paramétrables par</description>
		<content:encoded>Bonjour,
une personne ici a déjà installé un serveur de mail personnel (sur son ordinateur) ?
Les filtres antispams de mon fournisseur étant parfois stricts et pas paramétrables par le client, j'envisage un serveur mail, juste pour récupérer de temps en temps un code envoyé sur une adresse mail bien précise, utilisée pour accéder à certains comptes qui expédient un code de vérification.
Je voudrais quelque chose de rapide à configurer, sans trop mettre les mains dans le cambouis ; il y a citadel, mais je n'arrive pas à l'installer sur Debian.
Des pistes.</content:encoded>
		<dc:date>2026-05-22T13:39:22+02:00</dc:date>
		<dc:creator>Bongota</dc:creator>
		<dc:subject>Serveur de mails</dc:subject>
		<link>https://forum.alsacreations.com/topic-20-91675-1.html</link>
		<guid>https://forum.alsacreations.com/topic-20-91675-1.html</guid>
	</item>
	<item>
		<title>Créer un positionneur d'images pour façonner 1 avatar</title>
		<description>Bonjour !

je sais que de nos jours on peut tout demander aux IA codeuses. Mais, justement j'aimerais essayer sans elles pour quelques bouts de code, parce que je crois qu'il y a moins de</description>
		<content:encoded>Bonjour !

je sais que de nos jours on peut tout demander aux IA codeuses. Mais, justement j'aimerais essayer sans elles pour quelques bouts de code, parce que je crois qu'il y a moins de contact entre les gens sur internet à cause d'elles (moins de forums, moins de doc et moins de wikis).

Alors je viens demander directement à un forum de code 

Je code en html, css, un peu de php, mais je galère avec java script.
j'aimerais pourtant avoir une petite interface de création d'avatar, où il serait possible pour l'utilisateur.ice qui se connecte d'assembler des morceaux de visages (nez bouche yeux) pour créer son avatar une fois qu'iel est connecté au site.

Pour le HTML &#x26; CSS, ça prendrait l'apparence d'une grille avec :
- un canva au milieu
- des div à placer sur les côtés, qui contiendraient la listes des différents éléments qu'on veut placer sur le canva, comme dans une interface basique de création d'avatar.
- un bouton submit qui retient dans mariadb chacuns des éléments assemblés et leurs positions après qu'il soient placé sur le canva (comme ça ça ne sauvegarde pas toute l'image, ce qui pourrait être lourd pour la base de données, simplement ça reconstruit l'image à la reconnexion).

En java script, il faudrait d'abord permettre un glisser-déposer de ces éléments sur le canva.

quelqu'un.e aurait - il ici le temps / l'envie de m'aider ?
Si vous répondez à ce message, on pourra en parler davantage et je mettrai mes codes HTML / CSS pour la structure du créateur d'avatars ici !

ça me ferait plaisir de travailler avec une communauté plutôt qu'avec une ia !!  mais si c'est trop long (parce que je ne demande pas juste un peu d'aide pour une erreur de code), je ferai autrement.

merci d'avoir lu, pour toute question, je reste à votre écoute, salut !</content:encoded>
		<dc:date>2026-05-20T17:49:07+02:00</dc:date>
		<dc:creator>marina-morena</dc:creator>
		<dc:subject>Créer un positionneur d'images pour façonner 1 avatar</dc:subject>
		<link>https://forum.alsacreations.com/topic-5-91673-1.html</link>
		<guid>https://forum.alsacreations.com/topic-5-91673-1.html</guid>
	</item>
	<item>
		<title>QR code</title>
		<description>Bonjour à tous
Connaîtriez vous un moyen de générer gratuitement un QR code?
J’en ai besoin moins de 10 fois par an, et tous les sites que j’ai trouvés et qui proposent de générer</description>
		<content:encoded>Bonjour à tous
Connaîtriez vous un moyen de générer gratuitement un QR code?
J’en ai besoin moins de 10 fois par an, et tous les sites que j’ai trouvés et qui proposent de générer gratuitement des QR codes génèrent en fait des codes valables quelques jours, et il faut prendre un abonnement pour les réactiver</content:encoded>
		<dc:date>2026-05-19T15:49:14+02:00</dc:date>
		<dc:creator>PapyJP</dc:creator>
		<dc:subject>QR code</dc:subject>
		<link>https://forum.alsacreations.com/topic-1-91672-1.html</link>
		<guid>https://forum.alsacreations.com/topic-1-91672-1.html</guid>
	</item>
	<item>
		<title>[Résolu] Aide sur un mini programme html</title>
		<description>Bonjour,
j'ai reçu par une connaissance un code HTML qui me permettra sur iPad ou Mac de noter les numéros des boules du jeu BINGO. Il s'agit d'un tirage au sort par une personne d'une boule parmi</description>
		<content:encoded>Bonjour,
j'ai reçu par une connaissance un code HTML qui me permettra sur iPad ou Mac de noter les numéros des boules du jeu BINGO. Il s'agit d'un tirage au sort par une personne d'une boule parmi X, et le numéro qu'elle porte est indiqué à tous les joueurs, ceux qui ont ce chiffre sur leur carton le recouvre.
Quand une ligne horizontale de 5 est couverte , il gagne.
Plus d'explication si besoin...
Je voudrais cliquer sur un tableau les différents chiffres sortis pour qu'il n'y ait pas de malentendus et ensuite pour dire quels sont les N° les plus sortis après X tirages.
Comme indiqué, le début est fait, il fonctionne pas trop mal mais est incomplet et je ne sais pas que faire.
Quelqu'un ici pourrait m'aider ? 
Comment envoyer ce ficher de - de 1O Ko isi, est-ce possible ? </content:encoded>
		<dc:date>2026-05-18T20:55:49+02:00</dc:date>
		<dc:creator>pat1545</dc:creator>
		<dc:subject>[Résolu] Aide sur un mini programme html</dc:subject>
		<link>https://forum.alsacreations.com/topic-1-91671-1.html</link>
		<guid>https://forum.alsacreations.com/topic-1-91671-1.html</guid>
	</item>
	<item>
		<title>Page actualité</title>
		<description>Tiens, la page "actualités" a disparu du site. C'était pourtant une source d'information des plus intéressantes.
Ou alors j'ai mal regardé ?</description>
		<content:encoded>Tiens, la page "actualités" a disparu du site. C'était pourtant une source d'information des plus intéressantes.
Ou alors j'ai mal regardé ?</content:encoded>
		<dc:date>2026-05-17T12:05:58+02:00</dc:date>
		<dc:creator>Bongota</dc:creator>
		<dc:subject>Page actualité</dc:subject>
		<link>https://forum.alsacreations.com/topic-9-91670-1.html</link>
		<guid>https://forum.alsacreations.com/topic-9-91670-1.html</guid>
	</item>
	<item>
		<title>élément en scroll reveal right qui gêne</title>
		<description>Bonjour,

J'ai créé un site web en utilisant ScrollReveal mais j'ai un souci avec les éléments qui utilisent ScrollReveal en origin: 'right'.
En effet sur version mobile ça "élargit"</description>
		<content:encoded>Bonjour,

J'ai créé un site web en utilisant ScrollReveal mais j'ai un souci avec les éléments qui utilisent ScrollReveal en origin: 'right'.
En effet sur version mobile ça "élargit" le body ce qui fait apparaître un scroll horizontal.
J'ai tenté de mettre un overflow:hidden sur le body et le html mais ça ne fonctionne pas.

Auriez-vous une solution ?

Merci de votre aide.

</content:encoded>
		<dc:date>2026-05-12T16:52:28+02:00</dc:date>
		<dc:creator>korom</dc:creator>
		<dc:subject>élément en scroll reveal right qui gêne</dc:subject>
		<link>https://forum.alsacreations.com/topic-27-91669-1.html</link>
		<guid>https://forum.alsacreations.com/topic-27-91669-1.html</guid>
	</item>
	<item>
		<title>Vidéo srcset ?</title>
		<description>Bonjour,
Existe-t-il un équivalent "srcset" pour les vidéos comme ça existe pour les images ?</description>
		<content:encoded>Bonjour,
Existe-t-il un équivalent "srcset" pour les vidéos comme ça existe pour les images ?</content:encoded>
		<dc:date>2026-05-07T17:42:34+02:00</dc:date>
		<dc:creator>korom</dc:creator>
		<dc:subject>Vidéo srcset ?</dc:subject>
		<link>https://forum.alsacreations.com/topic-27-91668-1.html</link>
		<guid>https://forum.alsacreations.com/topic-27-91668-1.html</guid>
	</item>
	<item>
		<title>Nostalgie...</title>
		<description>En fouillant dans mes cartons. J'ai toujours le la peine à les jeter.
upload/1778086829-67790-disquette-connexion-internet.jpg 
upload/1778086872-67790-modem-58.jpg</description>
		<content:encoded>En fouillant dans mes cartons. J'ai toujours le la peine à les jeter.
upload/1778086829-67790-disquette-connexion-internet.jpg 
upload/1778086872-67790-modem-58.jpg</content:encoded>
		<dc:date>2026-05-06T19:01:28+02:00</dc:date>
		<dc:creator>Bongota</dc:creator>
		<dc:subject>Nostalgie...</dc:subject>
		<link>https://forum.alsacreations.com/topic-9-91667-1.html</link>
		<guid>https://forum.alsacreations.com/topic-9-91667-1.html</guid>
	</item>
	<item>
		<title>[Résolu] Hauteur variable d'un grid-item</title>
		<description>Bonjour,

Cette discussion fait suite à ce sujet.

Ce codepen présente le problème.

Les dernières déclarations difficiles à lire ne servent qu'à faire</description>
		<content:encoded>Bonjour,

Cette discussion fait suite à ce sujet.

Ce codepen présente le problème.

Les dernières déclarations difficiles à lire ne servent qu'à faire fonctionner le carrousel, sans impact à ma connaissance sur la mise en page.

Mon problème est que la colonne de gauche du carrousel doit être aussi haute que la colonne de droite.

La solution la moins inesthétique et d'ajouter du padding en haut et en bas de l'image principale. Ou équivalent avec object-fit.

Dans le principe il y a une DIV dont je définis la taille, les image de tailles différentes viennent remplir la DIV avec object-fit.

Voyez-vous un code pour ajuster la hauteur du carrousel ? Modifié par boteha_2 (02 May 2026 - 12:34)</content:encoded>
		<dc:date>2026-05-02T12:31:52+02:00</dc:date>
		<dc:creator>boteha_2</dc:creator>
		<dc:subject>[Résolu] Hauteur variable d'un grid-item</dc:subject>
		<link>https://forum.alsacreations.com/topic-4-91665-1.html</link>
		<guid>https://forum.alsacreations.com/topic-4-91665-1.html</guid>
	</item>
	<item>
		<title>Faille critique dans le noyau : CVE-2026-31431</title>
		<description>Bonjour tout le monde, 

l'article de Korben est explicite. Je vous laisse le soin de le lire : 
Copy Fail - Une IA trouve la faille Linux que personne n'a vue

Cette</description>
		<content:encoded>Bonjour tout le monde, 

l'article de Korben est explicite. Je vous laisse le soin de le lire : 
Copy Fail - Une IA trouve la faille Linux que personne n'a vue

Cette CVE fait couler beaucoup « d'encre » sur la toile. 

Bonne lecture.</content:encoded>
		<dc:date>2026-04-30T15:33:46+02:00</dc:date>
		<dc:creator>Niuxe</dc:creator>
		<dc:subject>Faille critique dans le noyau : CVE-2026-31431</dc:subject>
		<link>https://forum.alsacreations.com/topic-9-91664-1.html</link>
		<guid>https://forum.alsacreations.com/topic-9-91664-1.html</guid>
	</item>
	<item>
		<title>[Résolu] Minmax() dans GRID : définition et exemple</title>
		<description>Bonjour,

Je n'ai pas trouvé de titre adapté pour ce petit problème illustré par ce codepen.

La colonne GAUCHE doit faire 20rem de large et devenir plus étroite si nécessaire.</description>
		<content:encoded>Bonjour,

Je n'ai pas trouvé de titre adapté pour ce petit problème illustré par ce codepen.

La colonne GAUCHE doit faire 20rem de large et devenir plus étroite si nécessaire.

La colonne DROITE occupe tout l'espace restant avec une largeur minimale de 20rem.

Autrement dit, si fenêtre de 30rem, GAUCHE sera 10rem et droite 20rem.

Cela fonctionne avec les déclarations du codepen.

Par contre, si le contenu de GAUCHE n'est pas assez large, la colonne fait moins de 20rem de large.
C'est la cas dans la deuxième DIV du codepen.

L'objectif est, si la fenêtre est assez large, d'avoir 20rem pour GAUCHE dans deuxième DIV, 
Tout ayant la largeur de 10rem si la fenêtre est réduite à 30rem.

J'espère que l'énoncé est clair... Modifié par boteha_2 (30 Apr 2026 - 19:39)</content:encoded>
		<dc:date>2026-04-29T17:59:14+02:00</dc:date>
		<dc:creator>boteha_2</dc:creator>
		<dc:subject>[Résolu] Minmax() dans GRID : définition et exemple</dc:subject>
		<link>https://forum.alsacreations.com/topic-4-91663-1.html</link>
		<guid>https://forum.alsacreations.com/topic-4-91663-1.html</guid>
	</item>
	<item>
		<title>[Résolu] Section hero sur mobile</title>
		<description>Salut,

Pour afficher ma section hero sur mobile, Gemini m’a dit*
@media screen and (max-width: 768px) and (orientation: portrait) {
  .hero {
    height: 100vh;</description>
		<content:encoded>Salut,

Pour afficher ma section hero sur mobile, Gemini m’a dit*
@media screen and (max-width: 768px) and (orientation: portrait) {
  .hero {
    height: 100vh;
    height: 100dvh;
  }
}
Euh… ça le fait ? On peut améliorer le code ou c’est bon et je peux mettre ça en prod ?

* on dirait pigeon vole </content:encoded>
		<dc:date>2026-04-25T08:46:03+02:00</dc:date>
		<dc:creator>myself</dc:creator>
		<dc:subject>[Résolu] Section hero sur mobile</dc:subject>
		<link>https://forum.alsacreations.com/topic-1-91660-1.html</link>
		<guid>https://forum.alsacreations.com/topic-1-91660-1.html</guid>
	</item>
	<item>
		<title>[Résolu] Toucher à scrollbar-width: et l’accessibilité ?</title>
		<description>Salut,

Dans ma css, je n’ai rien spécifié sur l’épaisseur de la scollbar.
Aussi, je voulais savoir si c’était accessible de spécifier un scrollbar-width: none; ?
</description>
		<content:encoded>Salut,

Dans ma css, je n’ai rien spécifié sur l’épaisseur de la scollbar.
Aussi, je voulais savoir si c’était accessible de spécifier un scrollbar-width: none; ?

Pour l’instant, j’ai :
html {
  overflow-x: hidden;
  scroll-behavior: smooth;
  scroll-padding-top: 20px;
}

À moins de jouer aussi sur l’overflow-y ? 

Merci. Modifié par myself (25 Apr 2026 - 07:12)</content:encoded>
		<dc:date>2026-04-25T06:55:57+02:00</dc:date>
		<dc:creator>myself</dc:creator>
		<dc:subject>[Résolu] Toucher à scrollbar-width: et l’accessibilité ?</dc:subject>
		<link>https://forum.alsacreations.com/topic-6-91659-1.html</link>
		<guid>https://forum.alsacreations.com/topic-6-91659-1.html</guid>
	</item>
	<item>
		<title>Grid CSS cassée au zoom</title>
		<description>Bonjour,

J’utilise CSS Grid pour créer une mise en page en 3 colonnes sur desktop, avec un passage en 1 colonne via media query sur mobile. Cependant, lorsque je zoome le navigateur à</description>
		<content:encoded>Bonjour,

J’utilise CSS Grid pour créer une mise en page en 3 colonnes sur desktop, avec un passage en 1 colonne via media query sur mobile. Cependant, lorsque je zoome le navigateur à environ 125%–150%, le layout se casse : certaines colonnes passent à la ligne alors que le breakpoint n’est pas encore atteint.

Est-ce qu’il existe une bonne pratique pour garder une mise en page stable lors du zoom utilisateur sans multiplier les media queries ? Quels types d’unités (px, %, rem, fr...) recommandez-vous dans ce cas ?

Merci d’avance pour votre aide !</content:encoded>
		<dc:date>2026-04-23T06:27:14+02:00</dc:date>
		<dc:creator>RoseBL</dc:creator>
		<dc:subject>Grid CSS cassée au zoom</dc:subject>
		<link>https://forum.alsacreations.com/topic-4-91658-1.html</link>
		<guid>https://forum.alsacreations.com/topic-4-91658-1.html</guid>
	</item>
	<item>
		<title>À lire : Pourquoi votre gestion de stock peut échouer ?</title>
		<description>Bonjour à tous,

Je souhaitais partager avec la communauté un problème récurrent que je vois passer aussi bien chez les débutants que chez les développeurs confirmés. Il concerne la</description>
		<content:encoded>Bonjour à tous,

Je souhaitais partager avec la communauté un problème récurrent que je vois passer aussi bien chez les débutants que chez les développeurs confirmés. Il concerne la gestion des ressources partagées, typiquement le stock dans une boutique en ligne, mais aussi les places de spectacle, les réservations, ou tout système où une quantité limitée est disponible.

Le code qui semble parfaitement logique
Prenons un exemple simplifié, dans un pseudo-code compréhensible par tous :


fonction passerCommande(idProduit, quantite) {
    // 1. On récupère le produit
    produit = recupererProduit(idProduit)
    
    // 2. On vérifie le stock
    si (produit.stock &#x3C; quantite) {
        retourner ERREUR "Stock insuffisant"
    }
    
    // 3. On crée la commande
    commande = creerCommande(idProduit, quantite)
    
    // 4. On met à jour le stock
    produit.stock = produit.stock - quantite
    sauvegarder(produit)
    
    retourner commande
}


Ce code est clair, logique, et fonctionne parfaitement quand on le teste seul.

Le problème : la race condition

Imaginez maintenant un produit très demandé. Il ne reste que 1 seul exemplaire en stock.

    - Utilisateur Alice (10h00m00.001s) : La fonction est appelée. Le stock lu est 1. La vérification stock &#x3C; quantité est fausse (1 &#x3C; 1), donc on passe à la suite.
    - Utilisateur Bob (10h00m00.050s) : La fonction est appelée 50 millisecondes plus tard, alors qu'Alice n'a pas encore fini de sauvegarder. Bob lit lui aussi stock = 1. Sa vérification passe également.

Résultat final :
    - Alice obtient sa commande. Le stock passe à 0.
    - Bob obtient aussi sa commande. Le stock passe à -1.

Vous venez de vendre deux fois le même produit unique.

Pourquoi ce bug est-il si courant ?

Parce qu'il est silencieux. En développement local, avec un seul utilisateur, il est impossible à reproduire. Il ne se manifeste qu'en production, sous charge, souvent au pire moment (lancement d'un produit, soldes, Black Friday).

Techniquement, c'est un problème de concurrence (race condition) et de pattern « Check-then-Act » (vérifier puis agir). Entre la vérification et l'action, l'état du système a changé.

La solution : atomicité et verrouillage

Pour résoudre ce problème de manière universelle, quel que soit le langage ou le framework utilisé, deux mécanismes doivent être combinés :

1. La transaction atomique

Une transaction garantit que toutes les opérations d'un bloc réussissent ensemble ou échouent ensemble. Si une erreur survient à n'importe quelle étape, tout est annulé (ROLLBACK).


DEBUT TRANSACTION
    // Toutes les opérations ici
FIN TRANSACTION (COMMIT si tout va bien, ROLLBACK sinon)


2. Le verrouillage pessimiste

Avant même de vérifier le stock, il faut verrouiller la ligne concernée dans la base de données. Cela empêche toute autre connexion de lire ou modifier cette ligne tant que la transaction n'est pas terminée.

En SQL, cela se traduit par SELECT ... FOR UPDATE.

DEBUT TRANSACTION
    // Verrouiller la ligne du produit
    produit = SELECT * FROM produit WHERE id = idProduit FOR UPDATE
    
    // Maintenant, personne d'autre ne peut toucher à cette ligne
    SI produit.stock &#x3C; quantite ALORS
        ROLLBACK
        RETOURNER ERREUR
    FIN SI
    
    // Création de la commande
    INSERT INTO commande ...
    
    // Mise à jour atomique du stock (calcul fait par le SGBD)
    UPDATE produit SET stock = stock - quantite WHERE id = idProduit
    
COMMIT


3. La mise à jour atomique

Plutôt que de faire stock = stock - quantite dans le code applicatif, il est préférable de laisser le SGBD faire le calcul :


UPDATE produit SET stock = stock - 1 WHERE id = 42;


Cela évite de relire une valeur potentiellement déjà modifiée.

Ce qu'il faut retenir

Dès que votre application manipule une ressource partagée et limitée (stock, places, crédits, solde), vous devez :

1. Identifier le bloc critique qui lit puis écrit.
2. L'encapsuler dans une transaction.
3. Utiliser un verrou pessimiste sur la ressource convoitée.
4. Privilégier les mises à jour atomiques en base de données.

Ce n'est pas une question de langage ou de framework. Que vous codiez en PHP, Python, Java, Ruby ou JavaScript, le problème et la solution sont les mêmes. Seule la syntaxe change.

J'ai rédigé un article détaillé sur mon blog qui applique ces principes à un cas concret avec Django et cas Django REST Framework, mais les concepts restent universels. 

Note : J'ai hésité à publier ce sujet ici, sachant qu'Alsacréations est historiquement plus orienté frontend. Mais les problématiques de concurrence et d'intégrité des données touchent aussi les développeurs full-stack, et je pense que le forum a toute sa place pour ce type de partage backend. N'hésitez pas à me dire si ce format « article » est le bienvenu ou s'il aurait été plus pertinent ailleurs. Modifié par Niuxe (19 Apr 2026 - 23:46)</content:encoded>
		<dc:date>2026-04-19T23:05:35+02:00</dc:date>
		<dc:creator>Niuxe</dc:creator>
		<dc:subject>À lire : Pourquoi votre gestion de stock peut échouer ?</dc:subject>
		<link>https://forum.alsacreations.com/topic-9-91657-1.html</link>
		<guid>https://forum.alsacreations.com/topic-9-91657-1.html</guid>
	</item>
	<item>
		<title>Éléments html pour un carrousel d'images</title>
		<description>Bonjour,

Cette discussion fait suite à ce sujet.

Dans un carrousel, le clic sur l'image principale ouvre le carrousel dans une pop-up.

Pour l'accessibilité,</description>
		<content:encoded>Bonjour,

Cette discussion fait suite à ce sujet.

Dans un carrousel, le clic sur l'image principale ouvre le carrousel dans une pop-up.

Pour l'accessibilité, quelques sont les éléments html les mieux appropriés afin d'encadrer les images.

&#x3C;div class="pop_up"&gt;&#x3C;img /&gt;&#x3C;/div&gt;
&#x3C;div class="vignette"&gt;&#x3C;img /&gt;&#x3C;/div&gt;
&#x3C;div class="vignette"&gt;&#x3C;img /&gt;&#x3C;/div&gt;

Faut-il remplacer div par un autre élément et si oui par quoi ?</content:encoded>
		<dc:date>2026-04-19T12:37:30+02:00</dc:date>
		<dc:creator>boteha_2</dc:creator>
		<dc:subject>Éléments html pour un carrousel d'images</dc:subject>
		<link>https://forum.alsacreations.com/topic-6-91656-1.html</link>
		<guid>https://forum.alsacreations.com/topic-6-91656-1.html</guid>
	</item>
</channel>
</rss>
