Les actualités du Mercredi 23 juillet 2025 dans les métiers du web - Marmits.com - Reims

Le: 23 07 2025 à 18:20 FrenchWeb.fr Auteur: INFORMATION:

Pour une entreprise, une campagne Google Ads bien conduite s’avère indispensable pour séduire de nouveaux clients. Avant de se lancer, il importe toutefois d’en connaître précisément le prix. Il est nécessaire à cet effet d’étudier le coût de chaque poste de dépense en 2025. Quel est le tarif moyen pour bénéficier des services d’une agence …

L’article Quelle somme prévoir pour réussir sa campagne Google Ads en 2025 ? est apparu en premier sur FRENCHWEB.FR.

Le: 23 07 2025 à 16:05 Journal du Net Développeurs

Face à la pénurie de talents cyber, la reconversion professionnelle est une solution stratégique pour former en interne, renforcer la sécurité numérique et fidéliser les collaborateurs motivés.

Le: 23 07 2025 à 16:03 Journal du Net Développeurs

En été, la mobilité accrue des collaborateurs rend les smartphones particulièrement vulnérables aux cybermenaces, dans un contexte où la cybersécurité de ces outils reste souvent négligée.

Le: 23 07 2025 à 14:37 Alsacreations.com - Actualités Auteur: Raphael

CSS, bien qu'il ne soit qu'un langage de présentation, peut parfois impacter l'expérience utilisateur des personnes utilisant des technologies d'assistance. Ironiquement, certaines propriétés CSS, conçues pour simplifier la mise en page et son accessibilité, peuvent conduire… à engendrer des soucis d'accessibilité.

Cet article passe en revue certaines propriétés CSS pouvant poser ce type de problèmes, les mécanismes sous-jacents, et surtout, comment les contourner efficacement.

On ne traitera pas des cas basiques comme l'absence de contraste, les polices illisibles, ou les problèmes de focus. Ici, on se concentre sur des pièges plus subtils liés à l'utilisation de certaines propriétés CSS spécifiques, à savoir display et list-style.

display sur les éléments de tableau

L'application de la propriété display sur les éléments de tableau (<table>, <tr>, <td>, <th>) offre une flexibilité de mise en page extraordinaire, mais peut également entraîner des problèmes d'accessibilité majeurs en modifiant leur sémantique sur Safari / VoiceOver, rendant les tableaux inaccessibles. Cela concerne particulièrement les declarations display: block, display: flex, et display: grid.

À savoir qu'il ne s'agit pas d'un bug, mais d'un choix de Webkit qui préconise l'utilisation de l'attribut ARIA `role` dans ce cas de figure.

/* ❌ Safari ne reconnaît plus la rangée dans son arbre d'accessibilité */
tr {
  display: grid;
}

Solution :

/* ✅ OK si la rangée a un rôle ARIA explicite (ici "row") */
tr[role="row"] {
  display: grid;
}

En HTML :

<!-- ✅ Bonne pratique -->
<table>
  …
  <tr role="row">
    <td>Donnée</td>
  </tr>
  …
</table>

list-style: none sur les listes

L'utilisation de list-style: none pour supprimer les puces des listes est une pratique courante en CSS.

Cependant, cette approche peut avoir des conséquences inattendues sur l'accessibilité, particulièrement dans Safari : quand list-style: none est appliqué, il supprime également la sémantique de liste de l'arbre d'accessibilité. VoiceOver ne reconnaît plus l'élément comme une liste, privant l'utilisateur d'informations contextuelles importantes.

/* ❌ Safari supprime la fonction de liste */
ul {
  list-style: none;
}

Solution :

/* ✅ Uniquement si la liste a un rôle ARIA explicite */
ul[role="list"] {
  list-style: none;
}

En HTML :

<!-- ✅ Bonne pratique -->
<ul role="list">
  <li>Élément de liste</li>
  <li>Autre élément</li>
</ul>

display: contents

La propriété display: contents est l'une des sources les plus pernicieuses de problèmes d'accessibilité. Elle retire l'élément de l'arbre de rendu tout en conservant ses enfants, ce qui peut se révéler extrêmement pratique pour les layouts complexes ou enchevêtrés (Bootstrap, si tu nous entends…).

Cependant, son utilisation sur des éléments sémantiques comme les boutons, les tableaux, les titres ou les listes entraîne une perte totale de la sémantique et de l'interaction pour les utilisateurs de technologies d'assistance.

/* ❌ Danger : supprime la sémantique du bouton */
button {
  display: contents;
}

L'impact :

  • Les boutons et divers éléments de formulaire deviennent inopérants au clavier
  • Les tableaux perdent leur structure logique
  • Les titres et les listes ne sont plus reconnus comme tels

Solution :

/* ✅ Utiliser display: contents uniquement sur des éléments non-sémantiques */
.wrapper {
  display: contents; /* OK sur une div */
}

Checklist avant déploiement

Avant de déployer votre projet, voici une checklist rapide pour garantir l'accessibilité pouvant être impactée par les styles CSS :

  1. Tableaux : Vérifiez que display: flex/grid sur des éléments tabulaires (<table>, <tr>, <td>) n'est pas utilisé sans un rôle ARIA explicite
  2. Listes : Assurez-vous que list-style: none est accompagné de role="list"
  3. Boutons et formulaires : Évitez display: contents sur les éléments interactifs

Mini Reset CSS spécial "accessibilité"

Un reset CSS est souvent utilisé pour uniformiser les styles de base entre les navigateurs. Cependant, il est crucial de s'assurer que ces resets ne compromettent pas l'accessibilité. Voici quelques bonnes pratiques à caser pour un reset CSS accessible :

/* Reset CSS accessible */

/* Hauteur de ligne minimale pour les contenus */
body {
  line-height: 1.5;
}

/* Hauteur de ligne réduite pour les éléments interactifs */
h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}

/* Améliore la lisibilité des liens */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Supprime les styles de liste uniquement si role="list" est explicite */
ul[role="list"],
ol[role="list"] {
  list-style: none;
}

/* Masquage du contenu visuellement tout en le gardant accessible aux technologies d'assistance. */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}

/* Désactivation des animations pour les utilisateurs sensibles */
@media (prefers-reduced-motion: reduce) {
  *,
  ::before,
  ::after {
    transition-duration: 0s !important;
    transition-delay: 0s !important;
    animation-duration: 1ms !important;
    animation-delay: -1ms !important;
    animation-iteration-count: 1 !important;
    background-attachment: initial !important;
    scroll-behavior: auto !important;
  }
}

Si vous voulez découvrir le fichier "Reset" employé chez Alsacréations, n'hésitez pas à vous rendre sur notre mini-projet reset.alsacreations.com qui décrit en détail la composition et l'usage de ce fichier chez nous.

Conclusion

L'accessibilité en CSS n'est pas qu'une question de bonnes intentions, c'est un domaine technique qui nécessite — notamment — une compréhension approfondie des interactions entre les propriétés CSS et les technologies d'assistance. Les propriétés ou valeurs modernes comme display: contents, bien qu'utiles, peuvent créer des barrières d'accessibilité si elles ne sont pas utilisées avec précaution.

La règle d'or : testez toujours avec de vraies technologies d'assistance, et gardez en tête que ce qui fonctionne visuellement peut être complètement cassé pour un utilisateur de lecteur d'écran.

Ressources complémentaires

Publié par Alsacreations.com

Le: 23 07 2025 à 14:37 Alsacreations.com - Apprendre Auteur: Raphael

CSS, bien qu'il ne soit qu'un langage de présentation, peut parfois impacter l'expérience utilisateur des personnes utilisant des technologies d'assistance. Ironiquement, certaines propriétés CSS, conçues pour simplifier la mise en page et son accessibilité, peuvent conduire… à engendrer des soucis d'accessibilité.

Cet article passe en revue certaines propriétés CSS pouvant poser ce type de problèmes, les mécanismes sous-jacents, et surtout, comment les contourner efficacement.

On ne traitera pas des cas basiques comme l'absence de contraste, les polices illisibles, ou les problèmes de focus. Ici, on se concentre sur des pièges plus subtils liés à l'utilisation de certaines propriétés CSS spécifiques, à savoir display et list-style.

display sur les éléments de tableau

L'application de la propriété display sur les éléments de tableau (<table>, <tr>, <td>, <th>) offre une flexibilité de mise en page extraordinaire, mais peut également entraîner des problèmes d'accessibilité majeurs en modifiant leur sémantique sur Safari / VoiceOver, rendant les tableaux inaccessibles. Cela concerne particulièrement les declarations display: block, display: flex, et display: grid.

À savoir qu'il ne s'agit pas d'un bug, mais d'un choix de Webkit qui préconise l'utilisation de l'attribut ARIA `role` dans ce cas de figure.

/* ❌ Safari ne reconnaît plus la rangée dans son arbre d'accessibilité */
tr {
  display: grid;
}

Solution :

/* ✅ OK si la rangée a un rôle ARIA explicite (ici "row") */
tr[role="row"] {
  display: grid;
}

En HTML :

<!-- ✅ Bonne pratique -->
<table>
  …
  <tr role="row">
    <td>Donnée</td>
  </tr>
  …
</table>

list-style: none sur les listes

L'utilisation de list-style: none pour supprimer les puces des listes est une pratique courante en CSS.

Cependant, cette approche peut avoir des conséquences inattendues sur l'accessibilité, particulièrement dans Safari : quand list-style: none est appliqué, il supprime également la sémantique de liste de l'arbre d'accessibilité. VoiceOver ne reconnaît plus l'élément comme une liste, privant l'utilisateur d'informations contextuelles importantes.

/* ❌ Safari supprime la fonction de liste */
ul {
  list-style: none;
}

Solution :

/* ✅ Uniquement si la liste a un rôle ARIA explicite */
ul[role="list"] {
  list-style: none;
}

En HTML :

<!-- ✅ Bonne pratique -->
<ul role="list">
  <li>Élément de liste</li>
  <li>Autre élément</li>
</ul>

display: contents

La propriété display: contents est l'une des sources les plus pernicieuses de problèmes d'accessibilité. Elle retire l'élément de l'arbre de rendu tout en conservant ses enfants, ce qui peut se révéler extrêmement pratique pour les layouts complexes ou enchevêtrés (Bootstrap, si tu nous entends…).

Cependant, son utilisation sur des éléments sémantiques comme les boutons, les tableaux, les titres ou les listes entraîne une perte totale de la sémantique et de l'interaction pour les utilisateurs de technologies d'assistance.

/* ❌ Danger : supprime la sémantique du bouton */
button {
  display: contents;
}

L'impact :

  • Les boutons et divers éléments de formulaire deviennent inopérants au clavier
  • Les tableaux perdent leur structure logique
  • Les titres et les listes ne sont plus reconnus comme tels

Solution :

/* ✅ Utiliser display: contents uniquement sur des éléments non-sémantiques */
.wrapper {
  display: contents; /* OK sur une div */
}

Checklist avant déploiement

Avant de déployer votre projet, voici une checklist rapide pour garantir l'accessibilité pouvant être impactée par les styles CSS :

  1. Tableaux : Vérifiez que display: flex/grid sur des éléments tabulaires (<table>, <tr>, <td>) n'est pas utilisé sans un rôle ARIA explicite
  2. Listes : Assurez-vous que list-style: none est accompagné de role="list"
  3. Boutons et formulaires : Évitez display: contents sur les éléments interactifs

Mini Reset CSS spécial "accessibilité"

Un reset CSS est souvent utilisé pour uniformiser les styles de base entre les navigateurs. Cependant, il est crucial de s'assurer que ces resets ne compromettent pas l'accessibilité. Voici quelques bonnes pratiques à caser pour un reset CSS accessible :

/* Reset CSS accessible */

/* Hauteur de ligne minimale pour les contenus */
body {
  line-height: 1.5;
}

/* Hauteur de ligne réduite pour les éléments interactifs */
h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}

/* Améliore la lisibilité des liens */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Supprime les styles de liste uniquement si role="list" est explicite */
ul[role="list"],
ol[role="list"] {
  list-style: none;
}

/* Masquage du contenu visuellement tout en le gardant accessible aux technologies d'assistance. */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  clip-path: inset(50%) !important;
}

/* Désactivation des animations pour les utilisateurs sensibles */
@media (prefers-reduced-motion: reduce) {
  *,
  ::before,
  ::after {
    transition-duration: 0s !important;
    transition-delay: 0s !important;
    animation-duration: 1ms !important;
    animation-delay: -1ms !important;
    animation-iteration-count: 1 !important;
    background-attachment: initial !important;
    scroll-behavior: auto !important;
  }
}

Si vous voulez découvrir le fichier "Reset" employé chez Alsacréations, n'hésitez pas à vous rendre sur notre mini-projet reset.alsacreations.com qui décrit en détail la composition et l'usage de ce fichier chez nous.

Conclusion

L'accessibilité en CSS n'est pas qu'une question de bonnes intentions, c'est un domaine technique qui nécessite — notamment — une compréhension approfondie des interactions entre les propriétés CSS et les technologies d'assistance. Les propriétés ou valeurs modernes comme display: contents, bien qu'utiles, peuvent créer des barrières d'accessibilité si elles ne sont pas utilisées avec précaution.

La règle d'or : testez toujours avec de vraies technologies d'assistance, et gardez en tête que ce qui fonctionne visuellement peut être complètement cassé pour un utilisateur de lecteur d'écran.

Ressources complémentaires

Publié par Alsacreations.com

Le: 23 07 2025 à 14:33 Webdesigner Depot Auteur: Louise North

Want to boost your website’s conversions? The secret might just be in how you format your text! From strategic bolding and short sentences to using images, videos, and whitespace, these simple design tweaks can transform user experience and drive real results.

Le: 23 07 2025 à 12:03 Journal du Net Développeurs

L'expérience client : la clé de votre e-commerce. Découvrez comment optimiser chaque interaction pour fidéliser et augmenter vos ventes. Des stratégies concrètes pour PME pour une croissance accélérée.

Le: 23 07 2025 à 12:00 Journal du Net Développeurs

La période estivale est un moment rare pour lever la tête et réfléchir aux fondamentaux. Façon devoirs de vacances, voici quelques réflexions stratégiques à méditer pour les dirigeants du retail.

Le: 23 07 2025 à 11:56 Journal du Net Développeurs

Alors que le commerce en ligne ne cesse d'évoluer, les enseignes physiques sont confrontées à un double défi : conserver leur attractivité tout en répondant aux nouvelles attentes des consommateurs.

Le: 23 07 2025 à 11:54 FrenchWeb.fr Auteur: LA REDACTION DE FRENCHWEB.FR

La liquidation de Monster Europe est désormais inévitable, près d’un an après la création d’une joint-venture entre Monster et CareerBuilder, les actionnaires Randstad (49 %) et Apollo (51 %) ont interrompu tout soutien financier à l’ex-pionnier du recrutement en ligne, condamnant son activité sur le continent. En France, plus de 200 salariés sont concernés par …

L’article Monster Europe en voie de liquidation, Randstad et Apollo face à leurs responsabilités est apparu en premier sur FRENCHWEB.FR.

Le: 23 07 2025 à 11:53 Journal du Net Développeurs

Maîtrisez les secrets du CRO pour un e-commerce rentable : fluidifiez le parcours, renforcez la confiance, incitez à l'achat et testez sans cesse. Chaque visite doit devenir une vente.

Le: 23 07 2025 à 11:50 Journal du Net Développeurs

Les équipes financières font face à de nombreux défis, mais des solutions comme l'automatisation et l'IA émergent pour répondre aux exigences croissantes et à la transformation numérique.

Le: 23 07 2025 à 11:46 Journal du Net Développeurs

Les tensions sur la politique tarifaire repartent de plus belle, les entreprises n'ont d'autre choix que d'envisager de répercuter une partie des coûts sur leurs clients. Mais est-ce la bonne option ?

Le: 23 07 2025 à 11:41 Journal du Net Développeurs

"Pay by bank" : un terme clair et universel pour désigner le paiement bancaire direct, simplifier l'expérience utilisateur et accélérer l'adoption en Europe face à la confusion actuelle.

Le: 23 07 2025 à 10:30 ballajack.com Auteur: Ballajack

Nous avons tous déjà vécu cela : vous cliquez sur l’icône Chrome, puis… vous attendez. Cette attente qui semble interminable avant que votre page d’accueil ne s’affiche enfin peut être frustrante. Vous en avez assez de cette attente ? Dans cet article, nous allons voir comment optimiser Chrome pour qu’il démarre plus rapidement. Activer le préchargement des pages Web L’une des premières choses à faire pour accélérer le démarrage de Google Chrome est d’activer le préchargement des pages Web. Cette fonctionnalité permet à Chrome d’anticiper le chargement des pages que vous êtes susceptible de visiter, afin de commencer à les ...

Lire la suite


Lire la suite : Comment optimiser Google Chrome pour qu’il démarre ultra rapidement ?

Le: 23 07 2025 à 09:44 Journal du Net Développeurs

Chaque jour, des millions de professionnels publient sur les réseaux sociaux avec des résultats souvent mitigés mais il existe des leviers pour inverser la tendance.

Le: 23 07 2025 à 08:50 WebdesignerNews Auteur: Robert Tanislav

A few weekends ago, I launched a Shopify app on my own — not to prove I could code, but to solve a real merchant pain point. I had no dev team, no startup budget — just a clear understanding of the problem, a few AI tools, and the instincts of a designer.

Le: 23 07 2025 à 08:49 WebdesignerNews Auteur: Robert Tanislav

The Model Context Protocol (MCP) is an open standard. It acts like a universal connector for AI applications that will allow them to communicate with external data sources or other tools. So instead of building custom integrations for each of these data sources or tools, MCP provides a standardized way for AI models to access the information they need to provide better and more relevant responses.

Le: 23 07 2025 à 08:48 WebdesignerNews Auteur: Robert Tanislav

Let’s learn how to create an SVG viewer with HTML, CSS, and JavaScript. We’ll be able to write, paste, and edit SVG code, then preview and export the SVGs.

Le: 23 07 2025 à 08:47 WebdesignerNews Auteur: Robert Tanislav

Let’s be honest for a second. Most “free Lightroom preset” packs are garbage. They’re either a bait-and-switch for a paid bundle, or they’re so over-the-top they make your photos look like a cartoon parody from 2014. As a designer, your eye is trained for nuance, for balance, for an aesthetic that communicates something. Slapping a garish, one-size-fits-all filter on your work just feels… wrong.

Le: 23 07 2025 à 08:47 WebdesignerNews Auteur: Robert Tanislav

Learn how to create an interactive 3D text effect where letters explode into dynamic shapes using Three.js, WebGPU, and Three Shader Language (TSL).

Le: 23 07 2025 à 08:46 WebdesignerNews Auteur: Robert Tanislav

It was a warm September night somewhere outside of Nashville. The campfire crackled, and because I can’t help myself I plucked away at my acoustic guitar. Based on the laughter emanating from our circle and into the woods, you wouldn’t know that the people sitting around the fire had just met each other a few days prior. Conversation about life, design, music, and technology blurred together, and inside jokes were...

Le: 23 07 2025 à 08:44 WebdesignerNews Auteur: Robert Tanislav

Event listeners are essential for interactivity in JavaScript, but they can quietly cause memory leaks if not removed properly. And what if your event listener needs parameters? That’s where things get interesting. Amejimaobari Ollornwi shares which JavaScript features make handling parameters with event handlers both possible and well-supported.

Le: 23 07 2025 à 08:43 WebdesignerNews Auteur: Robert Tanislav

Have you ever opened a new app or website and thought, “Wait… where’s the menu?” You’re not alone. Many people are noticing that the traditional way we move around digital interfaces, those big, bulky menus is slowly fading. And no, it’s not bad design. It’s evolution.

Le: 23 07 2025 à 08:43 WebdesignerNews Auteur: Robert Tanislav

For nearly three years, Arc from The Browser Company has been my daily driver. To be sure, there was a little bit of a learning curve. Tabs disappeared after a day unless you pinned them. Then they became almost like bookmarks. Tabs were on the left side of the window, not at the top. Spaces let me organize my tabs based on use cases like personal, work, or finances. I...

Le: 23 07 2025 à 08:14 FrenchWeb.fr Auteur: LA REDACTION DE FRENCHWEB.FR

Acquérir un client est une dépense, qu’il convient de rentabiliser, la payback period, ou délai de récupération du coût d’acquisition, mesure précisément combien de temps il faut à une entreprise pour couvrir son CAC (Customer Acquisition Cost) grâce aux revenus générés. Cet indicateur est critique dans l’évaluation des modèles SaaS, abonnements, marketplaces ou services digitaux. …

L’article Payback period, quand votre client commence à vous rapporter est apparu en premier sur FRENCHWEB.FR.

Le: 23 07 2025 à 06:50 Journal du Net Développeurs

La Direction générale des finances publiques s'apprête à expédier un document à 40 millions de contribuables.

Le: 23 07 2025 à 06:45 Journal du Net Développeurs

8 Français sur 10 possèdent un livret d'épargne règlementée, mais beaucoup ignorent une règle qui permet d'augmenter leur rémunération.

Le: 23 07 2025 à 06:40 FrenchWeb.fr Auteur: LA REDACTION DE FRENCHWEB.FR

Le gouvernement britannique prépare une interdiction stricte des paiements de rançons pour l’ensemble du secteur public et des infrastructures critiques. Cette mesure, qui concernera notamment les collectivités locales, les établissements scolaires et le service de santé national (NHS), et marque un tournant stratégique dans la lutte contre les ransomwares. L’objectif est de rendre les attaques …

L’article Le Royaume-Uni veut casser le modèle économique des cybercriminels est apparu en premier sur FRENCHWEB.FR.