#css #css-float #stylesheet
#css #css-float #таблица стилей
Вопрос:
У меня есть структура html, как показано ниже.
<style>
.divcontainer
{
width:100%
}
.left_menu {
background: none repeat scroll 0 0 #333333;
border-radius: 5px 5px 5px 5px;
font-family: Arial,Helvetica,sans-serif;
font-size: 12px;
font-weight: bold;
padding: 5px;
width: 200px;
}
</style>
<div class="divcontainer">
<table width="100%">
<tr>
<td valign="top">
<div class="left_menu">
1
</div>
</td>
<td>
<div>
2</div>
</td>
</tr>
</table>
</div>
Мне нужно создать структуру, как на картинке ниже
но я не хочу применять стили к TD. Ширина td должна регулироваться с помощью классов, применяемых к дочернему div. Короче говоря, мой первый td должен занимать 25% от tr, а второй должен занимать оставшиеся 75%.Кто-нибудь может пролить свет на то, как это сделать?
Ответ №1:
Вы можете установить для второй td
hudge width
. Затем он примет доступную максимальную ширину и сначала td
сократится до своего содержимого. http://jsfiddle.net/f5q3E /
в основном здесь вам нужно установить :
td {
background:red;
}
td td {
width:100%;
background:blue;
}
Первый td будет подстраиваться под его содержимое и размер div, если таковой имеется, второй td будет использовать оставшееся пространство.
Комментарии:
1. отлично. именно то, что я ищу. еще один запрос. Как я могу упомянуть об этом для конкретного div? т.е. мне нужно применить приведенный выше стиль к div divcontainer.
2. что вы имеете в виду, для контейнера div?
3. Я понял. .divcontainer td { background:red; } .divcontainer td td { width:100%; background:blue; } сделал свое дело. Спасибо.
Ответ №2:
Существует так много способов справиться с этим — вот один — СКРИПКА — и это не лучше, чем любой другой подход.
Я просто немного смущен окраской ваших tds и окраской divs, которые входят в них.
Если вы можете рассказать нам о целях того, что вы хотите сделать, возможно, мы можем внести некоторые другие предложения, например, не использовать table для layout — divs? плавающие divs?
CSS
table tr td:nth-child(1) {
width: 25%;
background-color: red;
}
table tr td:nth-child(2) {
width: 75%;
background-color: blue;
color: white;
}