J'ai codé le menu déroulant via javascript (w/jQuery) et CSS. Le menu déroulant fonctionne bien mais si le menu déroulant situé au coin par exemple le plus à droite ou le plus à gauche de l'écran de l'utilisateur puis si l'utilisateur ouvre le menu déroulant, il déborde à la zone invisible de la fenêtre et provoque la barre de défilement horizontale.Détection est div hors de l'écran
Comment arrêter le débordement?
HTML
<ul class="dropdown">
<li class="headlink">
<a href="javascript://">Menu</a> <img src="/static/images/mini/sort_down.png" />
<ul class="arrowlist invisible">
<li>Hello 1</li>
<li>Hello 2</li>
<li>Hello 3</li>
</ul>
</li>
</ul>
CSS
.dropdown {z-index: 1}
.dropdown .headlink{border:1px solid #C7C9CF;padding:4px 6px;}
.dropdown li{}
.dropdown a{outline:none}
.dropdown ul{z-index:100;border:1px solid #C7C9CF;-moz-border-radius: 4px; -webkit-border-radius: 4px;border-radius:4px;behavior: url(/static/css3pie.php);background: #FFF url("/static/images/grey_fade_back.png") repeat-x scroll bottom;padding:8px;position:absolute;top:-1px;left:-4px}
.dropdown ul li{margin:2px;white-space:nowrap}
JS
$('.dropdown li.headlink')
.click(function() {
$(this).css('position', 'relative');
$('ul', this).slideDown(100);
});
$('.dropdown li.headlink')
.mouseleave(function(){
var headlink = this;
$('ul', this).slideUp(100, function(){
$(headlink).css('position', 'static');
})
});
J'ai également pris la liberté de corriger certains des problèmes dans le code que vous avez présenté à l'origine. –