Bonjour, j'ai repris une Navigation bar que j'ai customiser à ma sauce, et désormais je souhaiterai ajouter un "menu" ou "zone" de profil sur la droite de la navbar. Mais j'ai un problème je n'arrive pas à rendre celle-ci à droite et dans la navbar.
J'ai essayer le float: right, mais ça ne marche pas, le texte se retrouve sous la navbar.
Voici le code HTML:
<div id='cssmenu'>
<ul>
<li class='active'><a href='#'><span>Accueil</span></a></li>
<li><a href='#'><span>Blog</span></a></li>
<li><a href='#'><span>Tutoriels</span></a></li>
<li class='last'><a href='#'><span>Forum</span></a></li>
</ul>
<div class="profil">
Test
</div>
</div>
Son CSS:
#cssmenu .profil {
display: inline-block;
position: inherit;
vertical-align: top;
}
#cssmenu {
background: #f96e5b;
width: 100%;
}
#cssmenu ul {
list-style: none;
margin: 0;
padding: 0;
line-height: 1;
display: block;
zoom: 1;
}
#cssmenu ul:after {
content: " ";
display: block;
font-size: 0;
height: 0;
clear: both;
visibility: hidden;
}
#cssmenu ul li {
display: inline-block;
padding: 0;
margin: 0;
}
#cssmenu.align-right ul li {
float: right;
}
#cssmenu.align-center ul {
text-align: center;
}
#cssmenu ul li a {
color: #ffffff;
text-decoration: none;
display: block;
padding: 15px 25px;
font-family: 'Open Sans', sans-serif;
font-weight: 700;
text-transform: uppercase;
font-size: 14px;
position: relative;
-webkit-transition: color .25s;
-moz-transition: color .25s;
-ms-transition: color .25s;
-o-transition: color .25s;
transition: color .25s;
}
#cssmenu ul li a:hover {
color: #333333;
}
#cssmenu ul li a:hover:before {
width: 100%;
}
#cssmenu ul li a:after {
content: "";
display: block;
position: absolute;
right: -3px;
top: 19px;
height: 6px;
width: 6px;
background: #ffffff;
opacity: .5;
}
#cssmenu ul li a:before {
content: "";
display: block;
position: absolute;
left: 0;
bottom: 0;
height: 3px;
width: 0;
background: #333333;
-webkit-transition: width .25s;
-moz-transition: width .25s;
-ms-transition: width .25s;
-o-transition: width .25s;
transition: width .25s;
}
#cssmenu ul li.last > a:after,
#cssmenu ul li:last-child > a:after {
display: none;
}
#cssmenu ul li.active a {
color: #333333;
}
#cssmenu ul li.active a:before {
width: 100%;
}
#cssmenu.align-right li.last > a:after,
#cssmenu.align-right li:last-child > a:after {
display: block;
}
#cssmenu.align-right li:first-child a:after {
display: none;
}
@media screen and (max-width: 768px) {
#cssmenu ul li {
float: none;
display: block;
}
#cssmenu ul li a {
width: 100%;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
border-bottom: 1px solid #fb998c;
}
#cssmenu ul li.last > a,
#cssmenu ul li:last-child > a {
border: 0;
}
#cssmenu ul li a:after {
display: none;
}
#cssmenu ul li a:before {
display: none;
}
}
Voilà, en espérant trouver de l'aide à ce problème.
Cordialement, Alex.
Bonsoir.
Peut-être que si tu déclares tes éléments dans un ordre logique déja, ce serait mieux.
Car mettre ton élément ayant la classe profil avant la stylisation de ta navbar, ça ne doit pas aider à mon avis.
Bonjour,
Je ne sais pas ce que tu veux exactement, si c'est comme ça : http://i.imgur.com/cJVF7Yk.png je t'envoi la solution :D
Salut .Mais le #cssmenu qui est le parent en position relative et tout les enfants y compris la class profil en position absolute pour qu'il soit dans le menu.Ensuite pour mettre la classe profil a droite, met right:0, left:none.Si ça ne marche pas Fait moi signe ou fait une capture de l’état de ton menu pour qu'on puisse ensemble y voir plus claire
Je vous remercie de vos divers solutions déjà:
@Kouceyla -> Je voulais faire ça exactement.
@Daemon24 -> Merci de ta réponse.
@Lartak -> Merci de ton aide ! :D
Et la bonne réponse revient à...... Lartak. Merci.
Nouveau problème désormais:
J'ai fais un petit script faisant que lorsqu'il y a un scroll, la barre suis et passe en position: fixed.
Et donc la position relative n'est plus utilsié, et la barre bug donc et reste tout en haut.
DOnc sa passe de:
http://prntscr.com/5lg3uh
à:
http://prntscr.com/5lg3y3
Merci de vos futurs réponses.
$(function() {
$(window).scroll(function(){
if( $(window).scrollTop() > 45) {
$("#cssmenu").addClass("stickme");
$("#contenu").css("padding-top","95px");
} else {
$("#cssmenu").removeClass("stickme");
$("#contenu").css("padding-top","0px");
}
});
$("#cssmenu ul li a").click(function() {
$("#cssmenu ul li").removeClass("active");
$(this).parent().addClass("active");
alert('Ne pas oublier de remettre les liens !');
return false;
});
}); // Fin de l'utilisation