سؤال

أريد تعيين المستوى الثاني من المستكشف ليكون الارتفاع التلقائي، والتغيير إلى سطر جديد عندما يكون طويلاً جدًا.

لغة البرمجة:

<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 وإلى المتصفحات.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top