الارتفاع التلقائي لشريط التنقل في CSS
-
22-12-2019 - |
سؤال
أريد تعيين المستوى الثاني من المستكشف ليكون الارتفاع التلقائي، والتغيير إلى سطر جديد عندما يكون طويلاً جدًا.
لغة البرمجة:
<ul id="menu">
<li><a href="">About Us</a>
<ul>
<li><a href="">Introduction</a></li>
<li><a href="">Orgaizational Structure</a></li>
<li><a href="">Mission&Vision</a></li>
</ul>
</li>
</ul>
CSS:
* {
padding: 0;
margin: 0;
}
#menu {
list-style: none;
font-size: 0.8em;
border-radius: 5px;
-webkit-box-shadow: 0 5px 10px 0 #cccccc;
box-shadow: 0 2px 5px 0 #aaa;
background: #dddddd;
height: 40px;
width: 800px;
float: left;
}
#menu li {
display: block;
position: relative;
float: left;
}
#menu li ul {
display: none;
}
#menu li a {
display: block;
text-decoration: none;
padding: 12px 15px;
margin-left: 1px;
white-space: nowrap;
}
#menu li:hover ul {
display: block;
position: absolute;
background: #dddddd;
border-radius: 5px;
-webkit-box-shadow: 0 5px 10px 0 #cccccc;
box-shadow: 0 2px 5px 0 #aaa;
width: 100px;
}
تشغيله هنا: http://jsfiddle.net/U72Hm/
المحلول
لست متأكدًا مما تطلبه، ولكن إذا كنت تريد أن يلتف النص في سطر جديد، فقم بالتغيير white-space:no-wrap;
ل white-space:normal
ل menu li a{...}
.
نصائح أخرى
في حين أن هذه الإجابة لا يجيب تقنيا على السؤال، فهناك بعض الموارد الممتازة للقائمة هنا http://www.cssplay.co.uk/menus/ شرح سبب اتخاذ بعض قرارات CSS وإلى المتصفحات.
لا تنتمي إلى StackOverflow