Форум программистов, компьютерный форум, киберфорум
HTML, CSS
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.84/68: Рейтинг темы: голосов - 68, средняя оценка - 4.84
35 / 35 / 15
Регистрация: 06.01.2014
Сообщений: 707

Наследование высоты от родителя, который растягивается контентом

21.10.2014, 18:02. Показов 12638. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Есть элемент parent. В нем есть элементы small и content.

HTML5
1
2
3
4
<div id="parent">
    <div id="small"></div>
    <div id="content">Содержимое</div>
</div>
Как сделать так, чтобы элемент small тоже растягивался вслед за parent.(Я так понимаю что parent растягивается так же как и content.)

Small засовывать в content нельзя.

css элемента smal:
CSS
1
2
    width: 20px;
    float: left;
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.10.2014, 18:02
Ответы с готовыми решениями:

Потомок не растягивается на 100% высоты родителя в Chrome
Не могу понять почему потомки не растягиваются на 100% высоты родителей. В новых браузерах проблема не наблюдается. Всё слетает в Google...

Вывод поста, который содержит id категории, её родителя, родителя родителя
Есть 2 таблицы, первая - категории ( category_id, parent_id и т.д), вторая - посты (post_id, category_id) В общем, в...

растягивающийся блок по длине контейнера который растягивается и в который добавляются другие контейнеры
Здравствуйте, захотел добавить слайдер в пунктирную область, - нужна кликабельная область, для того что бы передавать и преобразовывать...

11
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
21.10.2014, 18:13
Можно на CSS3 так:
CSS
1
2
3
4
5
6
7
8
9
10
11
#parent {
    display: table;
}
#small
{
    display: table-cell;
}
#content
{
    display: table-cell;
}
Добавлено через 40 секунд
так же можно на JS замутить проверку высоты #content и давать такую же высоту блоку: #small
1
 Аватар для sashok89
75 / 75 / 11
Регистрация: 04.08.2012
Сообщений: 526
Записей в блоге: 2
21.10.2014, 18:13
Если я вас правильно понял, то вам нужно вот так вот сделать:

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
</head>
<body>
<div class="content">
  <div class="small">some text</div>
  <div class="big">some text</div>
</div>
</body>
</html>
CSS
1
2
3
4
5
6
7
8
9
10
11
12
.content {
  background: blue;
  height: 200px;
}
.small {
  background: yellow;
  height: 100%;
}
.big {
  background: red;
  height: 100%;
}
http://jsbin.com/jihico/edit?css,output
0
35 / 35 / 15
Регистрация: 06.01.2014
Сообщений: 707
21.10.2014, 20:12  [ТС]
sashok89, это что вообще такое не понятное?

Добавлено через 2 минуты
and_y87, а это свойство просто имитирует ячейку или делает из элемента таблицу? Просто таблицы на сайте плохо использовать, поисковику не нравятся таблицы.

JS не хочется для верстки использовать
0
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
21.10.2014, 20:14
Цитата Сообщение от Randen Посмотреть сообщение
это свойство просто имитирует ячейку
именно )
0
35 / 35 / 15
Регистрация: 06.01.2014
Сообщений: 707
21.10.2014, 20:27  [ТС]
and_y87, почему-то не работает, хотя по логике должно

Добавлено через 1 минуту
Вот полный код
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<div id="center">
<div id="area_top">
    <div id="area_top_left">
    </div>
    <div id="area_top_right">
    </div>
    <div id="area_top_center">
    </div>
</div>
<div id="area_middle">
    <div id="area_middle_left">
    </div>
    <div id="area_middle_right">
    </div>
    <div id="area_middle_center">
    <p>dfsdf</p><p>dfsdf</p><p>dfsdf</p><p>dfsdf</p><p>dfsdf</p><p>dfsdf</p>
    <p>dfsdf</p><p>dfsdf</p><p>dfsdf</p><p>dfsdf</p>
    <p>dfsdf</p><p>dfsdf</p><p>dfsdf</p><p>dfsdf</p>
    </div>
</div>
<div id="area_bottom">
    <div id="area_bottom_left">
    </div>
    <div id="area_bottom_right">
    </div>
    <div id="area_bottom_center">
    </div>
</div>
</div>
CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#area_top {
    height: 20px;
}
#area_top_left {
    width: 20px;
    height: 20px;
    background-image: url('../images/center/area/1.png');
    background-repeat: no-repeat;
    float: left;
}
#area_top_center {
    margin-left: 20px;
    margin-right: 20px;
    background-image: url('../images/center/area/5.png');
    background-repeat: repeat-x;
    height: 20px;
}
#area_top_right {
    width: 20px;
    height: 20px;
    background-image: url('../images/center/area/2.png');
    background-repeat: no-repeat;
    float: right;
}
 
#area_middle {
    display: table;
}
#area_middle_left {
    width: 20px;
    background-image: url('../images/center/area/8.png');
    background-repeat: repeat-y;
    float: left;
    display: table-cell;
}
#area_middle_center {
    margin-left: 20px;
    margin-right: 20px;
    background-image: url('../images/center/area/9.png');
    display: table-cell;
}
#area_middle_right {
    width: 20px;
    background-image: url('../images/center/area/6.png');
    background-repeat: repeat-y;
    float: right;
    display: table-cell;
}
 
#area_bottom {
    height: 20px;
}
#area_bottom_left {
    width: 20px;
    height: 20px;
    background-image: url('../images/center/area/4.png');
    background-repeat: no-repeat;
    float: left;
}
#area_bottom_center {
    margin-left: 20px;
    margin-right: 20px;
    background-image: url('../images/center/area/7.png');
    background-repeat: repeat-x;
    height: 20px;
}
#area_bottom_right {
    width: 20px;
    height: 20px;
    background-image: url('../images/center/area/3.png');
    background-repeat: no-repeat;
    float: right;
}
Добавлено через 46 секунд
Смысл в том, что из 9 картинок создается резиновая область для контента

Добавлено через 7 минут
Работает если у элементов убрать float, но как тогда центральный элемент сделать равным вот такой ширине
CSS
1
2
    margin-left: 20px;
    margin-right: 20px;
?
0
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
21.10.2014, 20:43
Randen, не совсем понятно что надо получить в итоге?
есть где глянуть макет или прототип?

Добавлено через 12 секунд
может решение будет другим совсем...
т.к. сейчас напрашиваются таблицы...
0
35 / 35 / 15
Регистрация: 06.01.2014
Сообщений: 707
21.10.2014, 21:04  [ТС]
просто у сайта есть левый блок, центральный и правый.
В центральном блоке нужно сделать резиновую область для контента.
Вроде бы уже решил это. Сделал 3 табличных строки, всем 9-ти элементам присвоил табличную ячейку.
Теперь осталось сделать допольнительный внешний блок, который будет выравниваться от правого и левого края, а резиновой области поставить ширину 100%.

Добавлено через 11 минут
Всё работает отлично. Вообще работать с таблицами классно, хорошо что есть такой свойство display: table
1
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
21.10.2014, 21:15
Randen, А чем не подходит инлайн метод?

HTML5
1
2
3
4
5
<div style="width: 100%;">
  <div style="width: 25%; display:inline-block;"></div>
  <div style="width: 50%; display:inline-block;"></div>
  <div style="width: 25%; display:inline-block;"></div>
</div>
0
35 / 35 / 15
Регистрация: 06.01.2014
Сообщений: 707
21.10.2014, 21:32  [ТС]
and_y87, область стоится из 9 картинок. 8 крайних и 1 центральная. У них крайних точный размер изображения, поэтому в % никак нельзя указывать блоки.
0
Develo0per
 Аватар для and_y87
424 / 368 / 75
Регистрация: 27.02.2012
Сообщений: 1,379
Записей в блоге: 98
22.10.2014, 17:19
Randen, с фиксироваными значениями это да... тогда не пойдёт тот метод...

ваще кстате в интернете много статей на тему организацыы колонок...
только недавно видел на хабре 4 способа
0
0 / 0 / 0
Регистрация: 01.10.2016
Сообщений: 1
01.10.2016, 09:18
Вот ответ: дополнительные свойства к потомкам добавляются

Ответ:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!DOCTYPE>
<html>
<body>
<head>
<link rel="stylesheet" href="pager.css">
</head>
<body>
<div class='bl__a'>
<div class='bl__a bl__a_blue'> </div>
<div class='bl__a'> </div>
<div class='bl__a bl__a_red'> </div>
<div class='bl__a'> </div>
<div class='bl__a'> </div>
</div>
</body>
CSS
1
2
3
4
5
6
7
8
9
10
11
div .bl__a{display:inline;
    width:100px;
position: relative;
float:left;
margin: 20px;
height:100px;
background:green;}
 
div .bl__a_red {background: red;}
 
div .bl__a_blue{background:blue;}
Миниатюры
Наследование высоты от родителя, который растягивается контентом  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.10.2016, 09:18
Помогаю со студенческими работами здесь

Сравнение высоты элемента и его родителя.
Правильно ли я понял здесь условие: если строка &quot;up&quot; равна direction то мы получаем высоту элемента -высоту его родительского элемента ...

Установка высоты дочернего блока, как у родителя
Доброго дня! В связи с нестандартной структурой сайта, понадобилось дать дочернему блоку высоту одного из верхних родителей...

Почему высота родителя меньше высоты контента
4 ряда, в ряде по 4 блока. 1 ряд отображается на странице, остальные 3 скрыты. При клике по кнопке &quot;Показать&quot; отображаются все...

Выравнивание по вертикали не зная высоты элемента и его родителя
&lt;div class=&quot;portfolio-block&quot;&gt; &lt;a class=&quot;portfolio-block-caption&quot; href=&quot;https://helpdn.ru/&quot; data-description=&quot;Обеспечение информационной...

Прижать к низу контейнер в родителе (вне зависимости от высоты родителя)
Добрый день. Возникла задача, с которой я не соображу как справиться. Есть два дива, один внутри другого. Нужно сделать что-бы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru