1485 sujets

Web Mobile et responsive web design

Bonjour,
j'ai fait un menu en css avec des flexbox que je commence à étudier (cf. discussion Flexbox alignement texte horizontal).
J'avais un problème pour aligner les puces des menus qui s'ouvraient à droite, i.e. quand je cliquais sur la 3ème ligne du menu vertical par exemple, le menu qui s'ouvrait à droite ne restait pas au même niveau. J'ai résolu ce problème en mettant un margin-top différent suivant les lignes, ce qui est un peu fastidieux surtout que les li peuvent faire une ligne ou 2 lignes, mais bon, cela marche correctement.
Mon menu horizontal a 6 li.
Mon code, qui marche bien, est :

#nav ul ul  {
	position: absolute;
	list-style-type: none;
	width: 150px;
	top: 0;
	left: 106%;
}

Je voudrais que les 3 premiers s'ouvrent à droite et les 3 suivants à gauche pour rester dans l'écran. Or, je ne sais comment les cibler.
J'ai fait une class pour chacun, genre .menucomp…, mais si je fais par exemple
#nav ul ul .menucomp ou #nav ul ul > .menucomp, cela m'enlève le top et le left.
Comment faire ?
Merci d'avance d'aider un ignare Smiley lol
Bonjour,

J'ai repris une ancienne version de ce que j'avais fait il y a deux mois et qui, après quelques corrections, fonctionne maintenant correctement.
En plus, cela me permet de me passer de superfish qui n'a pas l'air de fonctionner sur safari et qui semble poser quelques problèmes.
Merci quand même.