| HTML |
|---|
<div class="faq-portal-container">
<aside class="faq-sidebar-menu">
<h2 class="faq-menu-title">Catégories (5)</h2>
<ul class="faq-nav-list" id="faq-menu">
<li><a href="##pane1" class="faq-link active" onclick="showPane(event, 'pane1')">Mon terminal</a></li>
<li><a href="##pane2" class="faq-link" onclick="showPane(event, 'pane2')">Mon espace client</a></li>
<li><a href="##pane3" class="faq-link" onclick="showPane(event, 'pane3')">Ma télécollecte</a></li>
</ul>
</aside>
<main class="faq-content-panes">
<section id="pane1" class="faq-pane active">
<h3 class="md-sub-title">Mon terminal</h3>
<div class="md-faq"><div class="md-item"><div class="md-question">Comment commander un terminal ?</div><div class="md-answer"><span class="liensCommande-texte"></span></div></div></div>
</section>
<section id="pane2" class="faq-pane">
<h3 class="md-sub-title">Mon espace client</h3>
<div class="md-faq"><div class="md-item"><div class="md-question">Où trouver mes identifiants ?</div><div class="md-answer"><span class="dashboardLien-texte"></span></div></div></div>
</section>
</main>
</div><section id="pane3" class="faq-pane">
<h3 class="md-sub-title">Ma télécollecte</h3>
<div class="md-faq"><div class="md-item"><div class="md-question">Délai de paiement ?</div><div class="md-answer"><span class="telecollecte2-texte"></span></div></div></div>
</section>
</main>
</div> |
| HTML |
|---|
<style> |
| HTML |
<style> /* ... (garde ton code existant) ... */ .faq-nav-list li { padding: 0; margin-bottom: 5px; } .faq-link { display: block; padding: 15px; text-decoration: none; color: #000; border-radius: 10px; cursor: pointer; min-height: 44px; /* Taille recommandée par Apple pour les zones tactiles */ -webkit-tap-highlight-color: transparent; /* Supprime le flashtransition: grisbackground au clic sur iOS */0.3s ease; } .faq-link.active { background: #3474FF !important; color: #fff !important; } /* Correction pour mobile : quand on clique, on veut voir la section */ @media (max-width: 768px) { .faq-pane { scroll-margin-top: 20px; } /* Ajoute un espace en haut lors du scroll */ } </style> |
| HTML |
|---|
<script>
function showPane(e, id) {
e.preventDefault();
// Empêche le comportement
par défaut du lien
// 1. Mise à
jour de la classe //active Masquedu toutmenu
document.querySelectorAll('.faq-panelink').forEach(pl => pl.classList.remove('active'));
document.querySelectorAll('.faq-link').forEach(l => le.currentTarget.classList.removeadd('active'));
// Affiche le bon2. Mise à jour des panneaux
document.getElementById(id)querySelectorAll('.faq-pane').forEach(p => p.classList.addremove('active'));
e.currentTargetconst targetPane = document.getElementById(id);
targetPane.classList.add('active');
// e.currentTarget est l'élément cliqué3. Spécial iOS : défilement vers la section pour que l'utilisateur voie le contenu
// On utilise scrollIntoView pour que le mobile "suive" le clic
targetPane.scrollIntoView({ behavior: 'smooth', block: 'start' });
}
</script> |