Плавающие div в элементах списка (ul, li)

У меня есть список с двумя <div> в каждом <li>, и я хочу разместить их один рядом с другим, и я хочу, чтобы <li> занимал все доступное пространство. Как мне это сделать?

<html>
    <head>
        <title></title>
        <style type = "text/css">
            body {
            }
            ul {
            }
            li {
            }
            .a {
            }
            .b {
            }
        </style>
    </head>
    <body>
        <ul>
            <li>
                <div class = "a">
                    content
                </div>
                <div class = "b">
                    content
                </div>
            </li>
        </ul>
    </body>
</html>
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
1
0
4 227
7
Перейти к ответу Данный вопрос помечен как решенный

Ответы 7

li{width:100%;}
.a{}
.b{float: left;}

Это должно соответствовать моим знаниям CSS.

Без проверки, это должно работать


LI { width: 100%; }
.a { float: left; }
.b { float: right; }
Ответ принят как подходящий

 *{ margin: 0; padding: 0;}
 li{  width: 100%: display: block; } 
 li:after{ clear: both; } 
 div.a{ width: 49%;  float: left; }
 div.b{ width: 49%;  float: left; } 

Должен сделать свое дело.

Для div вам просто нужно плавать влево, а для li вы хотите сделать clear. Так:

li
{
    clear: left;
}
.a
{
    float: left;
}
.b
{
    float: left;
}

Вы должны указать ширину для плавающих элементов, иначе вы не получите эффект двух столбцов, который вам нужен. 49,9% или около того должны это делать.

roborourke 26.01.2009 13:42

li { width: 100%;}
.a { float: left;}
.b { float: left;}

Я предполагаю, что, взяв все пространство, вы имеете в виду ширину 100%. Я также предполагаю, что вы не хотите, чтобы стиль применялся к списку, поэтому я удалил его в этом примере. Это тоже без взлома. Вам не нужно ничего очищать, если ваш элемент списка имеет ширину и пару свойство / значение overflow: hidden.

ul,
li {
    width: 100%;
    list-style-type: none;
    margin: 0;
    padding: 0;
}
li {
    overflow: hidden;
}
li div.a,
li div.b {
    float: left;
}

Я вижу, что это старый пост, но если кто-то столкнется с той же проблемой, подумайте об этом:

<div>A block-level section in a document</div>
<span>An inline section in a document</span>

Вы можете использовать охватывать вместо div

Чтобы получить div помимо другого или по горизонтали, вам нужно применить грубую силу с .css, но если вы используете охватывать, это естественно. Скопируйте и вставьте следующий код в html и посмотрите, о чем я говорю:

<ul>
  <li>
      <div style = "background-color:red">red</div>
      <div style = "background-color:blue">blue</div>
  </li>
  <li>
      <span style = "background-color:red">red</span>
      <span style = "background-color:blue">blue</span>
  </li>
</ul>

Кроме того, по крайней мере, для Microsoft <li><div></div></li> не будет проверяться.

Другие вопросы по теме