<ul> এলিমানিটি উল্লম্বভাবে সারিবদ্ধ কিভাবে করবেন?


97

আমার একটি অনুভূমিক রয়েছে <ul>এবং আমার <li>এটির প্রতিটিকে উল্লম্বভাবে কেন্দ্র করা দরকার । আমার মার্কআপ নীচে। প্রত্যেকটির <li>একটি সীমানা রয়েছে এবং আমার আইটেমগুলির পাশাপাশি তাদের বিষয়বস্তুগুলি মাঝখানে উল্লম্বভাবে হওয়া দরকার। সাহায্য করুন; আমি সিএসএসে নতুন


<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <style type="text/css">
        .toolbar li
        {
            border: solid 1px black;
            display: block;
            float: left;
            height: 100px;
            list-style-type: none;
            margin: 10px;
            vertical-align: middle;
        }
        .toolbar li.button
        {
            height: 50px;
        }
    </style>
</head>
<body>
    <div class="toolbar">
        <ul>
            <li><a href="#">first item<br />
                first item<br />
                first item</a></li>
            <li><a href="#">second item</a></li>
            <li><a href="#">last item</a></li>
            <li class="button"><a href="#">button<br />
                button</a></li>
        </ul>
    </div>
</body>
</html>

w3schools.com/css/css_navbar.asp - আমি জানি যে এর জবাব দেওয়া হয়েছে তবে এখন থেকে যে কেউ এটিকে দেখলে আমি এই
সহায়কটি

উত্তর:


76

আমি ধরে নিয়েছি যেহেতু আপনি একটি এক্সএমএল ঘোষণা ব্যবহার করছেন, আপনি IE বা পুরানো ব্রাউজারগুলি নিয়ে চিন্তা করছেন না।

সুতরাং আপনি এটি ব্যবহার display:table-cellএবং display:table-rowপছন্দ করতে পারেন :

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <style type="text/css">
        .toolbar ul {
            display:table-row;
        }
        .toolbar ul li
        {
            display: table-cell;
            height: 100px;
            list-style-type: none;
            margin: 10px;
            vertical-align: middle;
        }
        .toolbar ul li a {
            display:table-cell;
            vertical-align: middle;
            height:100px;
            border: solid 1px black;
        }
        .toolbar ul li.button a {
            height:50px;
            border: solid 1px black;
        }
    </style>
</head>
<body>
    <div class="toolbar">
        <ul>
            <li><a href="#">first item<br />
                first item<br />
                first item</a></li>
            <li><a href="#">second item</a></li>
            <li><a href="#">last item</a></li>
            <li class="button"><a href="#">button<br />
                button</a></li>
        </ul>
    </div>
</body>
</html>

4
আপনাকে ধন্যবাদ, এটি আংশিকভাবে কাজ করে। অর্থাত, পিছনের বাক্সগুলির বিষয়বস্তু কেন্দ্রিক, তবে আমি কীভাবে বাক্সগুলিকে কেন্দ্র করব?
আকোনসু

না, না, তালিকার মাঝখানে। এই বিশেষ উদাহরণে, শেষ বাক্সটি প্রথম তিনটির চেয়ে কম হওয়া উচিত।
আকনসু

@ অ্যাকোনসু - আমি এটি পরিবর্তন করেছি, যদিও আমি এটি ফায়ারফক্স ব্যতীত অন্য কোনওটিতে পরীক্ষা করে নিই না। এটি ফিট যদি আমাকে জানাবেন।
রিচার্ড জে পি লে গুয়েন

4
রিচার্ড, আপনার সাহায্যের জন্য অনেক ধন্যবাদ। আমি এই প্রদর্শন ধরণের সম্পর্কে জানতাম না। দুর্ভাগ্যক্রমে তারা আই 7 তে সমর্থিত নয়। আমি প্রতিটি <li>: ampsoft.net/webdesign-l/versical-aligned-nav-list.html এর সামগ্রীগুলি সারিবদ্ধ করার একটি উপায় খুঁজে পেয়েছি তবে <li> ভিতরে <ul> ভিতরে সারিবদ্ধ করার জন্য কোনও ক্রস ব্রাউজারের উপায় নেই বলে মনে হচ্ছে। ..
আকনসু

4
আপনি যদি আই 7 কে টার্গেট করছেন তবে আপনার কাছে কেন একটি <?xml?>ঘোষণা আছে? আইই এর সমস্ত সংস্করণ এক্সএইচটিএমএলকে সত্যই সমর্থন করে না। আমি মনে করি আপনার পাঠ্য / এইচটিএমএল হিসাবে ক্ষতিকারক হিসাবে বিবেচিত: এইচএইচটিএমএল
রিচার্ড জে পি লে গুয়েন

75

এখানে একটি ভাল:

line-heightযা আছে তার সমান সেট করুন height; একটি যাদুমন্ত্র মত কাজ করে!

যেমন:

li {
    height: 30px;
    line-height: 30px;
}

4
আপনি একটি ছোট উদাহরণ দিয়ে বিস্তারিত বলতে পারেন?
লেইগ

4
নিখুঁত - লাইন-উচ্চতা: 30px; on floated <li> 's যা আমার প্রয়োজন ছিল (ক্রোম)
গুরুবিও

4
এটি যদি দুটি লাইনে পড়ে তবে কী হবে?
মহেশ

4
হ্যাঁ, কেবলমাত্র এক লাইনের চেয়ে বেশি পাঠ্য অক্ষম।
Wanny Miarelli

4
এটিই আমার জন্য কাজ করেছে। অন্যান্য উত্তর কাজ করে না।
আদেভ

35

আপনি এটির জন্য ফ্লেক্সবক্স ব্যবহার করতে পারেন।

ul {
    display: flex;
    align-items: center;
}

কীভাবে ফ্লেক্সবক্স ব্যবহার করবেন তার বিশদ বিবরণ এখানে পাওয়া যাবে


4

আমারও একই সমস্যা ছিল। এটা চেষ্টা কর.

<nav>
    <ul>
        <li><a href="#">AnaSayfa</a></li>
        <li><a href="#">Hakkımızda</a></li>
        <li><a href="#">İletişim</a></li>
    </ul>
</nav>
@charset "utf-8";

nav {
    background-color: #9900CC;
    height: 80px;
    width: 400px;
}

ul {
    list-style: none;
    float: right;
    margin: 0;
}

li {
    float: left;
    width: 100px;
    line-height: 80px;
    vertical-align: middle;
    text-align: center;
    margin: 0;
}

nav li a {
    width: 100px;
    text-decoration: none;
    color: #FFFFFF;
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.