আমি কীভাবে <ul> <li> ভাগ করে নিতে পারি


89

আমি কীভাবে <li>একটি স্থিত-প্রস্থে একটি আনর্ডারড তালিকাটি কেন্দ্র করতে পারি div?

<table width="100%">
  <tbody>
  <tr>
    <td width="41%"><img src="/web/20100104192317im_/http://www.studioteknik.com/html2/html/images/hors-service.jpg" width="400" height="424"></td>
    <td width="59%"><p align="left">&nbsp;</p>
      <h1 align="left">StudioTeknik.com</h1>
      <p><br align="left">
        <strong>Marc-André Ménard</strong></p>
      <ul>
        <li>Photographie digitale</li>
        <li>Infographie </li>
        <li>Débug et IT (MAC et PC)</li>
        <li> Retouche </li>
        <li>Site internet</li>
        <li>Graphisme</li>
      </ul>
      <p align="left"><span class="style1"><strong>Cellulaire en suisse : </strong></span><a href="#">+41 079 573 48 99</a></p>
      <p align="left"><strong class="style1">Skype : </strong> <a href="#">menardmam</a></p>
    <p align="left"><strong class="style1">Courriel :</strong><a href="https://web.archive.org/web/20100104192317/mailto:menardmam@hotmail.com">    info@studioteknik.com</a></p></td>
  </tr>
  </tbody>
</table>

উত্তর:


140

যেহেতু ulএবং liউপাদান display: blockডিফল্টরূপে - তাদের দিতে মার্জিন এবং প্রস্থ যে তাদের ধারক চেয়ে ছোট স্বয়ংক্রিয়

ul {
    width: 70%;
    margin: auto;
}

যদি আপনি তাদের প্রদর্শন সম্পত্তি পরিবর্তন করে থাকেন বা এমন কিছু করেন যা স্বাভাবিক প্রান্তিককরণের নিয়মগুলিকে ওভাররাইড করে (যেমন সেগুলি ভাসমান) তবে এটি কার্যকর হবে না।


4
যদি এটি আপনাকে খুশি না করে তবে সম্ভবত এটি ঘটবে: stackoverflow.com/questions/2865380/…
ব্রুইজার

10
প্রস্থ নির্ধারণ: অটো; এবং প্রদর্শন: ইনলাইন-ব্লক; আপনার উল পাঠ্য লাইনের মতো আচরণ করতে দেয়। তারপরে আপনি পাঠ্য-সারিবদ্ধ: কেন্দ্র; মূল উপাদান উপর। এটি নির্দিষ্ট প্রস্থ থাকার বিপরীতে অভ্যন্তরীণ সামগ্রীর পরিবর্তনের সাথে সাথে আপনার উলকে বাড়তে এবং সঙ্কুচিত করতে দেয়।
i_a

@ চেতাবহানা - আপনি পাঠ্যের দিকে নজর দিচ্ছেন, উপাদানটি নয়: jsfiddle.net/qwbexxog/3
কোয়ান্টিন

সমস্ত রেজোলিউশনের সাথে সূক্ষ্মভাবে কাজ করছে না, ফ্লেক্স সেন্টার কাজ করছে
শ্রীনিবাস

164

উলটিকে কেন্দ্র করে এবং এর মধ্যে লি উপাদানগুলিও কেন্দ্রীভূত রাখতে এবং উলটির প্রস্থ পরিবর্তনশীলভাবে পরিবর্তন করতে, প্রদর্শন ব্যবহার করুন: ইনলাইন-ব্লক; এবং এটি একটি কেন্দ্রিক ডিভ মধ্যে মোড়ানো।

<style type="text/css">
    .wrapper {
        text-align: center;
    }
    .wrapper ul {
        display: inline-block;
        margin: 0;
        padding: 0;
        /* For IE, the outcast */
        zoom:1;
        *display: inline;
    }
    .wrapper li {
        float: left;
        padding: 2px 5px;
        border: 1px solid black;
    }
</style>

<div class="wrapper">
    <ul>
        <li>Three</li>
        <li>Blind</li>
        <li>Mice</li>
    </ul>
</div>

হালনাগাদ

উপরের কোডটিতে এখানে একটি জেএসফিডাল লিঙ্ক


অন্যান্য সমাধানগুলির সাথে আমার যে সমস্যাটি হয়েছিল তা হ'ল আমি যদি এগুলিকে পরিবর্তন করি তবে এটি লিগুলির পক্ষে কাজ করবে না।
আরম কোচার্যান

আমি এটি বুটস্ট্র্যাপ 3 ন্যাভের জন্য ব্যবহার করছিলাম এবং এটিতে যুক্ত float: none;হওয়া দরকার ul
ডিলান ভ্যালাদ


24

পদক্ষেপ:

  1. এর style="text-align:center;"পিতামাতার divকাছে লিখুনul
  2. লিখন style="display:inline-table;"থেকেul
  3. লিখন style="display:inline;"থেকেli

বা ব্যবহার

<div class="menu">
 <ul>
   <li>item 1 </li>
   <li>item 2 </li>
   <li>item 3 </li>
 </ul>
</div>

<style>
 .menu { text-align: center; }
 .menu ul { display:inline-table; }
 .menu li { display:inline; }
</style>

আমাদের মার্জিন যোগ করতে হবে, অন্যথায় একে অপরকে এখানে চেক করা হবে jsfiddle.net/qwbexxog/4
চেতনাবহনে

এই উত্তর আমাকে বাঁচায়!
হুয়ান

10

যেকোন ডিআইভি ধারকটির অভ্যন্তরে উল এর কেন্দ্রের আরও ভাল উপায়।

এই সিএসএস সমাধানটি প্রস্থ এবং ফ্লোট বৈশিষ্ট্যগুলি ব্যবহার করে না। ভাসা: বাম এবং প্রস্থ: 70%, যখন আপনাকে বিভিন্ন মেনু আইটেমগুলি সহ বিভিন্ন পৃষ্ঠায় আপনার মেনুটিকে নকল করতে হবে তখন আপনাকে মাথা ব্যাথার কারণ করবে।

প্রস্থ ব্যবহারের পরিবর্তে, আমরা পাঠ্য / মেনু আইটেমের চারপাশে স্থান নির্ধারণ করতে প্যাডিং এবং মার্জিন ব্যবহার করি। এছাড়াও, এলআই এলিমেন্টে ফ্লোট: বাম ব্যবহার না করে প্রদর্শন: ইনলাইন-ব্লক ব্যবহার করুন।

আপনার এলআই বামে ভাসিয়ে আপনি আক্ষরিক অর্থে আপনার সামগ্রীটি বামে ভাসাবেন এবং তারপরে আপনার উলটি কেন্দ্রের জন্য আপনাকে অবশ্যই উপরে উল্লিখিত হ্যাকগুলির একটি ব্যবহার করতে হবে। প্রদর্শন: ইনলাইন-ব্লক আপনার জন্য আপনার ভাসমান সম্পত্তি তৈরি করে (সাজানো)। এটি আপনার এলআই উপাদান নেয় এবং একে একে ব্লক উপাদান হিসাবে রূপান্তর করে যা একে অপরের পাশাপাশি বসে (ভাসমান নয়)।

প্রতিক্রিয়াশীল ডিজাইন এবং বুটস্ট্র্যাপ বা ফাউন্ডেশনের মতো ফ্রেমওয়ার্কগুলি ব্যবহার করে, ভাসমান এবং কেন্দ্রের বিষয়বস্তুগুলি চেষ্টা করার সময় সমস্যা থাকবে। তাদের কিছু বিল্ট-ইন ক্লাস রয়েছে তবে স্ক্র্যাচ থেকে এটি করা সর্বদা ভাল। ডায়নামিক মেনুগুলির জন্য এই সমাধানটি আরও ভাল (যেমন অ্যাডোব বিজনেস ক্যাটালিস্ট মেনু সিস্টেম)।

এই টিউটোরিয়ালটির জন্য উল্লেখটি এখানে পাওয়া যাবে: http://html-tuts.com/center-div-image-table-ul-inside-div/

এইচটিএমএল

<div class="container">
        <ul>
            <li><a href="#">Button</a></li>
            <li><a href="#">Button</a></li>
            <li><a href="#">Button</a></li>
            <li><a href="#">Button</a></li>
            <li><a href="#">Button</a></li>
        </ul>
    </div>

সিএসএস

.container {
    text-align: center;
    border: 1px solid green;
}
.container ul {
    border: 2px solid red;
    display: inline-block;
    margin: 10px 0;
    padding: 2px;
}
.container li {
    display: inline-block;
}
.container li a {
    display: inline-block;
    background: #444;
    color: #FFF;
    padding: 5px;
    text-decoration: none;
}

6

হয় হতে পারে

div ul
{
 width: [INSERT FIXED WIDTH]
 margin: 0 auto;
}

বা

div li
{
text-align: center;
}

এটি দেখতে কেমন হওয়া উচিত (বা সেগুলির সংমিশ্রণ) এর উপর নির্ভর করে


4
পরবর্তী বিকল্পগুলি তালিকা আইটেমগুলিকে কেন্দ্র করে না, কেবল তাদের ইনলাইন সামগ্রী।
কোয়ান্টিন

তবুও, যদি <li>স্টাইলযুক্ত না হয় তবে এটি দেখতে একই রকম।
এফপি

4

একটি ব্লক অবজেক্ট কেন্দ্র করার জন্য (যেমন ul) আপনাকে তার উপর প্রস্থ নির্ধারণ করতে হবে এবং তারপরে আপনি সেই বস্তুগুলি বাম এবং ডান মার্জিনগুলিকে অটোতে সেট করতে পারেন।

ব্লক অবজেক্টের ইনলাইন সামগ্রীটি কেন্দ্রের জন্য (উদাহরণস্বরূপ ইনলাইন সামগ্রী li) আপনি CSS সম্পত্তি সেট করতে পারেন text-align: center;




1

আকর্ষণীয় তবে উলটির অভ্যন্তরে ভাসমান লি উপাদানগুলি ব্যবহার করে দেখুন: উদাহরণ এখানে

এখন সমস্যা: প্রকৃতপক্ষে কেন্দ্রে বসে থাকার জন্য উলটির একটি নির্দিষ্ট প্রস্থের প্রয়োজন। তবে আমরা এটি কনটেইনার প্রস্থের (বা গতিশীল) তুলনায় হতে চাই, মার্জিন: 0 টি স্বয়ংক্রিয় কাজ করে না।

আরও ভাল উপায় হ'ল উল / লি তালিকাটি ছেড়ে দেওয়া এবং এখানে একটি ভিন্ন পদ্ধতির উদাহরণ ব্যবহার করা


0

আপনি প্রস্থ জানেন তাহলে ulতারপর আপনি কেবল মার্জিন সেট করতে পারেন ulথেকে0 auto;

এটি ulসমন্বিত ডিভের মাঝখানে প্রান্তিককরণ করবে

উদাহরণ:

এইচটিএমএল:

<div id="container">
 <ul>
  <li>Item1</li>
  <li>Item2</li>
 </ul>
<div>

সিএসএস:

  #container ul{
    width:300px;
    margin:0 auto;
  }

0

আমি যে সমাধানটি পেতে পারি তা এখানে:

#wrapper {
  float:right;
  position:relative;
  left:-50%;
  text-align:left;
}
#wrapper ul {
  list-style:none;
  position:relative;
  left:50%;
}

#wrapper li{
  float:left;
  position:relative;
}

0

আরেকটি বিকল্প হ'ল:

এইচটিএমএল

<nav>
  <ul class = "main-nav"> 
   <li> Productos </li>
   <li> Catalogo </li>
   <li> Contact </li>  
   <li> Us </li>
  </ul>
</nav>    

সিএসএস:

nav {
  text-align: center;
}

nav .main-nav li {
  float: left;
  width: 20%;
  margin-right: 5%;
  font-size: 36px;
  text-align: center;
}

0

আমি একই কেসটি খুঁজছি এবং এর প্রস্থ পরিবর্তন করে সমস্ত উত্তর চেষ্টা করেছি <li>
দুর্ভাগ্যক্রমে সমস্ত <ul>বাক্সের বাম এবং ডানদিকে একই দূরত্ব পেতে ব্যর্থ হয়েছিল ।

নিকটতম ম্যাচটি এই উত্তরটি তবে এটি প্যাডিংয়ের সাথে প্রস্থের পরিবর্তন সামঞ্জস্য করতে হবে

.container ul {
    ...
    padding: 10px 25px;
}

.container li {
  ...
  width: 100px;
}

নীচের ফলাফলটি দেখুন, বাক্সের <li>মধ্যেও সমস্ত দূরত্ব <ul>একই।এখানে চিত্র বর্ণনা লিখুন

আপনি এই jsFizz এ এটি পরীক্ষা করতে পারেন:
http://jsfiddle.net/qwbexxog/14/


-1
<div id="container">
  <table width="100%" height="100%">
    <tr>
      <td align="center" valign="middle">
        <ul>
          <li>item 1</li>
          <li>item 2</li>
          <li>item 3</li>
        </ul>
      </td>
    </tr>
  </table>
</div>

-4

ওল্ডস্কুলের সেন্টার-ট্যাগ ব্যবহার করুন

<div> <center> <ul> <li>...</li> </ul></center> </div>

:-)


মার্কআপ-কোডে আপনার স্টাইল-ধরণের এক্সপ্রেশন ব্যবহার করা উচিত। সিএসএস এর জন্যই তৈরি হয়েছিল!
এফপি

4
কার্যক্ষম তবে লক্ষ্য করুন যে: " centerউপাদানটি এইচটিএমএল
৫.০১ এ অবমূল্যায়ন করা

4
দীর্ঘশ্বাসের W3Schools যথারীতি অসম্পূর্ণ, ভুল তথ্য সরবরাহ করে। এটি 4.01-এ নয় 4.0 এ অবহেলা করা হয়েছিল এবং কোনও স্ট্রাইক বৈকল্পিকের মধ্যে উপস্থিত হয় না (এক্সএইচটিএমএল ১.০ নির্ধারণ করা একটি বিজোড় পছন্দ)।
কোয়ান্টিন

যেমন এইচটিএমএল 4.01 এ অবমূল্যায়ন করার পূর্বে উল্লিখিত ছিল ... এটি ঠিক খারাপ অভ্যাস ...
জনি হেইনেস

4
হ্যাঁ, তাকে এই ধরণের ট্যাগ ব্যবহার করা উচিত নয়, তবে এটি কোনও নেতিবাচক উত্তর প্রাপ্য হওয়ার কারণ নয়। কখনও কখনও, আমরা সর্বাধিক সমাধান চাই। এবং আমার জন্য এই উত্তরটি ইতিবাচক।
workdreamer
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.