css 下拉菜单不在 dojo dijit.layout.ContentPane 中 float

标签 css drop-down-menu dojo

CSS 下拉菜单是以下位置的变体:

http://www.w3schools.com/css/tryit.asp?filename=trycss_dropdown_navbar

当放置在 dijit.layout.ContentPane 内时,会出现滚动条而不是 float 。

我已经追踪到这个文件的错误:

<link rel="stylesheet" href="http://js.arcgis.com/3.13/dijit/themes/claro/claro.css">      

但我看不出原因。

下面是代码。

<!-- File: css/dropdown.css-->
    ul.dbtul {
        list-style-type: none;
        margin: 0;
        padding: 0;
        overflow: hidden;
        background-color: #333;
    }

    li.dbtli {
        float: left;
    }

    li.dbtli a, .dropbtn {
        display: inline-block;
        color: white;
        text-align: center;
        padding: 14px 16px;
        text-decoration: none;
    }

    li.dbtli a:hover, .dropdown:hover .dropbtn {
        background-color: red;
    }

    li.dropdown {
        display: inline-block;
    }

    .dropdown-content {
        display: none;
        position: absolute;
        background-color: #f9f9f9;
        min-width: 160px;
        box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    }

    .dropdown-content a {
        color: black;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
        text-align: left;
    }

    .dropdown-content a:hover {background-color: #f1f1f1}

    .dropdown:hover .dropdown-content {
        display: block;
    }
 <!DOCTYPE html>
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">  
        <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no">              
        
        <link rel="stylesheet" href="http://js.arcgis.com/3.13/dijit/themes/claro/claro.css">         
    	<style type="text/css">  
        	html, body { height: 100%; }     
    	</style>    
    	<link rel="stylesheet" type="text/css" href="css/dropdown.css"/>	

        <script src="//ajax.googleapis.com/ajax/libs/dojo/1.11.2/dojo/dojo.js"></script>    	
        <script>
    	    var dojoConfig = {    	  
    	        parseOnLoad: true
    	    }
    	    require([ 
       		'dijit/layout/BorderContainer', 'dijit/layout/ContentPane', "dojo/parser", "dojo/domReady!" ],		
       		function(BorderContainer, ContentPane, parser) {	
       			parser.parse();
       		});	    	    
        </script>       
    </head>

    <body class="claro" style="font-family: Verdana; font-size: 11px;"  >         	 
    	<div id="mainWindow" data-dojo-type="dijit.layout.BorderContainer" data-dojo-props="design:'headline',gutters:false" style="width:100%; height:100%;">         	    	
        	<div data-dojo-type="dijit.layout.ContentPane" data-dojo-props="region:'top'">     			    		    		
    	    	<a id="linkDeRegreso" style="display:none;" href="#" class="controlesVolver"> &lt;&lt; Volver a p&aacute;gina anterior</a>	    	
    	    	<div >
    		    	<ul class="dbtul">
    				    <li class="dbtli"><a class="active" href="#home">Home</a></li>
    				    <li class="dbtli"><a href="#news">News</a></li>
    				    <li class="dropdown">
    					    <a href="#" class="dropbtn">123456</a>
    					    <div class="dropdown-content">
    					        <a href="#">Link 1</a>
    					        <a href="#">Link 2</a>
    					        <a href="#">Link 3</a>
    					    </div>
    				    </li>
    				</ul>
    	    	</div>
        	</div>	  
      	</div>    		   	
    </body>
</html>

最佳答案

这是 BorderContainer 布局的结果,它为 ContentPane div 设置了固定高度。这个 div 有 dijitContentPane 类,claro.css 有以下声明:

.dijitContentPane {
    display: block;
    overflow: auto; 
    -webkit-overflow-scrolling: touch;
}

您可以将溢出覆盖为可见,您的示例将工作,但是当您将其他元素添加到容器时,您可能会遇到布局问题。我建议只使用 dijit MenuBar:https://dojotoolkit.org/reference-guide/1.10/dijit/MenuBar.html

关于css 下拉菜单不在 dojo dijit.layout.ContentPane 中 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39236115/

相关文章:

javascript - 文本鼠标悬停时的图像边框

javascript - 菜单隐藏时如何返回className

javascript - 如何在javascript中更改表格行颜色onclick函数

javascript - 以编程方式触发下拉菜单 'onChange'

dojo - XPages - Dojo 验证文本框 - 自定义消息

javascript - 在模板中启动 dijis

css - 随页面宽度调整的可滚动 DIV

jquery - 如何使用jquery找到select标签的get属性,其中value=something?

dojo - Dojo 移动的 future

javascript - 使用 jQuery 在另一个事件发生更改事件后弹出下拉菜单