Как вставить данные в таблицу html. Применение пустых ячеек. Уральский государственный
педагогический университет
То таблицы играют очень важную роль в создании невидимого каркаса для веб-страницы. А это поможет равномерно и красиво расположить текст, меню, картинки и т.д.
Для лучшего понимания, о чем я пытаюсь вам рассказать, посмотрите на пример каркаса веб-страницы:
Итак, как в HTML сделать простую таблицу
?
Для постройки таблицы необходимо использовать три тега:
TABLE
–
этот тег нужен для открытия таблицы. Это, своего рода, контейнер, в котором содержатся другие элементы. Вот загнул так, что без пончика не разобраться. Ничего, разберетесь, когда увидите пример.
Закрывающий тег
обязателен.
Таблица состоит из ряда
ряд 1
|
ряд 1
|
ряд 2
|
ряд 2
|
ряд 3
|
ряд 3
|
ячейка 1
|
ячейка 2
|
ячейка 1
|
ячейка 2
|
ячейка 1
|
ячейка 2
|
TR
–
создает новый ряд таблицы. Закрывающий тег
обязателен.
TD
–
создает новую ячейку в ряду. Закрывающий тег
обязателен.
Давайте рассмотрим пример, чтобы лучше понять все выше сказанное:
Таблицы в HTML
ряд 1 ячейка1 | ряд1 ячейка2 |
ряд 2 ячейка 1 | ряд 2 ячейка 2 |
ряд 3 ячейка 1 | ряд 3 ячейка 2 |
Вот результат:
ряд 1 ячейка1
|
ряд1 ячейка2
|
ряд 2 ячейка 1
|
ряд 2 ячейка 2
|
ряд 3 ячейка 1
|
ряд 3 ячейка 2
|
Давайте все объясню.
Перед каждым созданием новой таблицы открывается тег
.
Дальше, размещаем в середине контейнера
тег
, что говорит о начале нового ряда.
В этом ряду вставляем две ячейки с содержанием при помощи тега
ряд 1 ячейка1
|
ряд1 ячейка2
|
Закрываем ряд тегом
.
Открываем другой ряд тегом
Закрываем ряд тегом
.
Открываем третий ряд тегом
и вставляем в него снова две ячейки.
Закрываем ряд тегом
.
Закрываем таблицу тегом
.
Я думаю, разобрались? Если кто-то забыл, что такое атрибут border
, который я использую вместе с тегом
, напоминаю, что это толщина рамки. Если в border
будет установлено значение «0»
, тогда границы таблицы будут невидимые.
Посмотрите парочку примеров созданных таблиц
и можно идти дальше:
Таблицы в HTML
ряд 1 ячейка 1 |
ряд 2 ячейка 1 |
Результат:
Для того чтобы вставить картинку в таблицу, нужно владеть элементарными начальными знаниями о том, как вставляется изображение в HTML файл. Об этом я рассказываю в . Теперь, когда вы знаете основные нюансы об изображении в HTML, можно попробовать вставить картинку в таблицу. Это можно сделать следующим образом:
в строку между тегами
|
вставить изображение.
Таблицы в HTML
ряд 1 ячейка 1 |
ряд 1 ячейка 2 |
![](https://i2.wp.com/1.gif) |
Результат:
ряд 1 ячейка 1
|
ряд 1 ячейка 2
|
|
А как объединить ячейки в таблице?
Чтобы объединить ячейки в таблице, вам нужно использовать такие атрибуты:
COLSPAN
– определяет количество столбцов.
По умолчанию значение 1.
ROWSPAN
– определяет количество рядов.
По умолчанию значение 1.
объединяем ячейки
в верхнем ряду с помощью атрибута colspan
:
Таблицы в HTML
ряд 1 ячейка 1+2 |
ряд 2 ячейка 1 | ряд 2 ячейка 2 |
Результат:
Как установить размер таблицы?
Чтобы задать высоту и ширину таблицы, воспользуйтесь такими атрибутами:
WIDTH
– ширина таблицы. Размер задается в пикселях или в процентах.
HEIGHT
– высота таблицы. Размер задается в пикселях или в процентах.
Таблицы в HTML
ряд 1 ячейка1 | ряд1 ячейка2 |
ряд 2 ячейка 1 | ряд 2 ячейка 2 |
Результат:
![](https://i1.wp.com/bloggood.ru/wp-content/uploads/2013/12/table-html-2.png)
Выравнивание содержимого в таблице
Чтобы выровнять внутри таблицы содержимое (текст, картинки), можно воспользоваться такими атрибутами:
ALIGN
– горизонтальное выравнивание содержимого в таблице.
К атрибуту ALIGN
присваивается значения: left
(по умолчанию)
, center
,
right
.
left
-
прижать содержимое к левой части;
center
–
установить по центру;
right
-
прижать содержимое к правой части
VALIGN
– вертикальное выравнивание содержимого в таблице.
К атрибуту VALIGN
присваивается значения: top
, bottom
, middle
.
top
–
прижать содержимое к верху;
bottom
–
прижать содержимое к низу;
middle
–
установить содержимое посередине
Таблицы в HTML
ряд 1 ячейка1 |
ряд1 ячейка2 |
ряд 2 ячейка 1 |
ряд 2 ячейка 2 |
Результат:
![](https://i2.wp.com/bloggood.ru/wp-content/uploads/2013/12/table-html-3.png)
Как сделать фон таблицы?
Можно также задать фон таблице для всех ее ячеек вместе взятых, а также для каждой ячейки по отдельности. Можно задать фон цветом, а можно и картинкой. Для фона существуют два атрибута:
BGCOLOR
– цвет фона всей таблицы или к каждой ячейке по отдельности. Цвет задается кодом или словом.
BACKGROUND
–фон в таблице заполняется рисунком.
Внимание:
если вы ходите задать фон цветом или фоновым рисунком всей таблице, атрибуты нужно установить в теге
. А если только к определенной ячейке, тогда в тег
.
Для лучшего понимания посмотрите пример:
Таблицы в HTML
ряд 1 ячейка1 |
ряд1 ячейка2 |
ряд 2 ячейка 1 |
ряд 2 ячейка 2 |
Результат:
![](https://i2.wp.com/bloggood.ru/wp-content/uploads/2013/12/table-html-4.png)
Внимание:
если картинка по размеру меньше за ячейку, тогда она будет повторяться, пока не заполнит ячейку до конца. Если картинка больше за ячейку, тогда фон картинки будет обрезан по размерам ячейки.
И напоследок расскажу еще о двух полезных атрибутах
.
В случае, если вам вдруг захочется увеличить расстояние между всеми ячейками, помогут следующие атрибуты:
CELLPADDING
–расстояние между рамкой каждой ячейки html таблицы и содержимым в ней материалом.
Таблицы в HTML
ряд 1 ячейка1 |
ряд1 ячейка2 |
ряд 2 ячейка 1 |
ряд 2 ячейка 2 |
Результат:
ряд 1 ячейка1
|
ряд1 ячейка2
|
ряд 2 ячейка 1
|
ряд 2 ячейка 2
|
CELLSPACING
–расстояние между границами соседних ячеек.
Таблицы в HTML
ряд 1 ячейка1 |
ряд1 ячейка2 |
ряд 2 ячейка 1 |
ряд 2 ячейка 2 |
Результат:
ряд 1 ячейка1
|
ряд1 ячейка2
|
ряд 2 ячейка 1
|
ряд 2 ячейка 2
|
Фух, рассказал!
Надеюсь, с задачей я справился и доступно объяснил все, что я знал про html таблицы
. А вам, рекомендую хорошо закрепить материал.
Попробуйте создать собственную таблицу, а лучше целый каркас для веб-страницы из таблицы html.
Всего вам хорошего!
Спасибо, что посетили мой блог
Задача
Создать таблицу и указать её параметры (поля и расстояние между ячейками) через стили.
Решение
Таблица состоит из строк и столбцов ячеек, которые могут содержать текст и рисунки. Для добавления таблицы на веб-страницу используется тег
. Этот элемент служит контейнером для элементов, определяющих содержимое таблицы. Любая таблица состоит из строк и ячеек, которые задаются соответственно с помощью тегов
и
. Таблица должна содержать хотя бы одну ячейку (пример 1). Допускается вместо тега |
использовать тег |
. Текст в ячейке, оформленной с помощью тега |
, отображается браузером шрифтом жирного начертания и выравнивается по центру ячейки. В остальном, разницы между ячейками, созданными через теги |
и |
нет.
Пример 1. Создание таблицы
HTML5
IE
Cr
Op
Sa
Fx
Тег table
Ячейка 1 |
Ячейка 2 |
Ячейка 3 |
Ячейка 4 |
Порядок расположения ячеек и их вид показан на рис. 1.
Рис. 1. Результат создания таблицы с четырьмя ячейками
Атрибут border
тега
допустимо добавлять только с пустым значением (
) или равным 1. Все остальные значения не проходят валидацию.
Для управления полями внутри ячеек используется стилевое свойство padding
, которое добавляется к селектору td
. Расстояние между ячейками меняется свойством border-spacing
(пример 2) добавляемым к селектору table
, браузер IE понимает его только с версии 8.0.
Пример 2. Поля внутри ячеек
HTML5
CSS 2.1
IE
Cr
Op
Sa
Fx
Тег table
Заголовок 1 | Заголовок 2 |
Ячейка 3 | Ячейка 4 |
Таблица с полями и расстоянием между ячейками показана на рис. 2. Аналогичного результата можно добиться и с помощью рамки белого цвета вокруг ячеек.
![](https://i0.wp.com/htmlbook.ru/files/images/faq/faq_table7_2.png)
Рис. 2. Поля в ячейках таблицы
Таблицы - одни из наиболее важных, но в тоже время сложных элементов, которые должны присутствовать на веб-страницах. С их помощью удобно подавать важную и полезную информацию в довольно сжатой форме. Конечно, большинство редакторов в шаблонах, работающих на различных движках, позволяют автоматически вставлять таблицу на страницу сайта или отдельной публикации, но что, если дизайн веб-ресурса, его страницы создаются с нуля? Тогда перед начинающим мастером может встать проблема: как сделать Давайте разберемся, как же правильно и быстро создать данный элемент. Выбираем редакторВ первую очередь, приступая к созданию таблицы, следует определиться с редактором, в котором вы будете работать. Конечно, проще всего выбрать ту программу, в которой вы создаете основной код сайта. Но лучше всего использовать для этих целей старый добрый блокнот. Вы можете спросить, для чего усложнять себе жизнь, ведь если делать все сразу в редакторе, то и результат можно увидеть тоже сразу, еще и подсказки программы использовать. Да, это действительно так, но, создавая таблицу с чистого листа, вы не только сможете досконально изучить сам принцип ее создания, но и не допустить досадных опечаток и ошибок в основном коде. Иногда случается так, что курсор случайно перемещается вниз, и в процессе написания в код закрадывается ошибка, которую порой сложно найти. Создав таблицу в блокноте, вы сможете скопировать ее шифр и вставить в нужное вам место. Алгоритм создания таблицыДля начала составим краткий алгоритм, как сделать таблицу в HTML. Это нужно для того, чтобы вы понимали последовательность каждого шага. Затем разберем, как именно выполнять каждый из пунктов. ![](https://i1.wp.com/fb.ru/misc/i/gallery/14901/438394.jpg)
Начнем с подготовительных действий. 1. Рисуем на листе бумаги схематическое изображение таблицы. 2. Подсчитываем количество строк и ячеек. Если количество последних разное - считаем для каждого рядочка отдельно. 3. Определяем в строке количество ячеек-заголовков (к примеру, ячейки «№», «Имя» и т. д.). 4. Записываем основные параметры таблицы - цвет, высоту и ширину, выравнивание текста - в общем, все, что вам покажется нужным. 1. Вставляем тэги таблицы. 2. Вставляем тэги строк исходя из того количества, которое вам нужно. 3. В строках вставляем тэги ячеек (обычных и заглавных), также исходя из того количества, которое записано у вас на бумаге. 4. Задаем параметры для таблицы в целом. 5. При надобности задаем показатели для отдельных ячеек. 6. Заполняем наши ячейки текстом. ![](https://i0.wp.com/fb.ru/misc/i/gallery/19591/437600.jpg)
Создаем таблицуИтак, вы выбрали редактор, теперь давайте разберемся, как создать таблицу в HTML. Тэг, с помощью которого в код страницы вставляется таблица ( ), является парным, то есть начинается наша конструкция с данного тэга, а заканчивается .Вставив тэги таблицы, переходим к созданию строк и ячеек. Сразу отметим, что данные элементы также являются парными. Тэг задает строки, а - ячейки. Для заглавных ячеек следует использовать парный элемент | . Как уже говорилось, первым делом следует оформить строки, затем в них прописывать уже ячейки. Для того чтобы не запутаться, советуем делать либо отступы между каждым блоком в одну-две строчки, либо же прописывать новый блок элементов, используя клавишу "Tab". Как это может выглядеть? Примерно так: ;; № п/п | ; Фамилия | ; ;;1 | ;Иванов | ; | ; .
Как видите, ничего сложного в этом нет. Главное - не запутаться в количестве строк и ячеек. Иначе таблицу может перекосить. Мы с вами разобрали создание таблицы в HTML, теперь можем переходить к параметрам как самой матрицы, так и ее строк и ячеек. ![](https://i2.wp.com/fb.ru/misc/i/gallery/14901/438396.jpg)
Параметры таблицыКогда код написан, следует обратить внимание на следующие пункты: выравнивание в границ, фона, текста и прочее. Параметры таблицы задаются в тэге . К ним относятся:1. Border - ширина границ. Задается целым числом. По умолчанию границы любой таблицы равны нулю. 2. Bordercolor - цвет границы. Может задаваться как шестнадцатеричным кодом цвета (#00008B), так и его названием на английком (DarkBlue). По умолчанию он всегда серый. 3. Bgcolor - Также задается с помощью кода или названия. 4. Align - выравнивание текста за таблицей. По умолчанию - по левому краю. Есть следующие варианты данного параметра: - left - обтекание справа;
- right -обтекание слева;
- center - вывод таблицы по центру без обтекания.
5. Width и height - ширина и высота таблицы. Может задаваться как в пикселях, так и в процентах (относительно размера браузера окна). Прописывая тот или иной показатель, следует обратить особое внимание на оформление. После указания параметра должен идти знак "равно", после которого в кавычках указывается заданное значение. Что касается цвета текста, то его оформляют так же, как и обычный текст в формате HTML. Пример оформления таблицы: ;;№ п/п | ;Фамилия | ; ;;1 | ;Иванов | ; | ; .
![](https://i2.wp.com/fb.ru/misc/i/gallery/14901/438398.jpg)
Параметры строкИтак, мы уже разобрались, как сделать таблицу в HTML и прописать основные ее параметры. Но что, если нам нужно выделить строку? Оформить ее не так, как основной текст таблицы? Параметры строки прописываются в тэге точно так же, как и данные таблицы. Для строки могут задаваться следующие переменные:1. Уже известные вам border, bordercolor и bgcolor. 2. Align - выравнивание текста в строке. Может принимать значения left, center и right. 3. Valign - данный тэг выравнивает текст по вертикали. Принимает следующие значения: - top - текст выравнивается по верхней границе;
- middle - по центру;
- bottom - по нижней границе.
Пример оформления строки: Параметры ячеекИ последнее, на что стоит обратить внимание тем, кто желает знать, как сделать таблицу в HTML - параметры отдельных ячеек, как обычных, так и заглавных. По сути, все делается точно так же, как и для таблицы или строки. Единственное, добавляется еще два немаловажных элемента: 1. Colspan - данный параметр указывает количество столбцов, на которые может простираться ячейка. 2. Rowspan - указывает уже количество строк, которое занимает данная ячейка. Так как оформление ничем не отличается от прописывания строки, то не будем приводить пример кода. ![](https://i2.wp.com/fb.ru/misc/i/gallery/19591/437595.jpg)
ВыводыСделать таблицу не так сложно, как может показаться на первый взгляд. Главное при написании ее кода - усидчивость и внимание. Что касается того, как вставить таблицу в HTML, то ее шифр достаточно скопировать и вставить именно в то место вашей страницы, в котором она, по вашему мнению, должна располагаться. Не бойтесь экспериментировать, и вскоре вы в совершенстве овладеете техникой создания таблиц. Успехов!
Таблицы в HTML настолько функциональны, что с помощью них можно верстать целые сайты (читайте ). Сейчас мы поговорим о вставке на веб-страницу несложных HTML-таблиц, разбирая только разметку, но не касаясь оформления, потому что украшать таблицы лучше с помощью CSS-стилей.
Теги и атрибуты таблиц
Вот основные элементы, которые нужны для создания таблиц:
- контейнер, внутри которого располагается таблица (такой же, как для маркированных или
для нумерованных списков).
- border
- атрибут, определяющий толщину рамок. Вместо него лучше использовать свойство border CSS.
-
задаёт подпись таблицы. Контейнер можно не использовать, но если вы всё-таки решили озаглавить таблицу, то ставьте его сразу после тега
, вне ячеек и строк.
- парный тег, содержащий строку таблицы (ячейки, расположенные на одном уровне по горизонтали).
- тег, создающий ячейку заголовка таблицы. Внешне её содержимое отличается от контента в других ячейках - обычно текст внутри |
обозреватель выделяет жирным и размещает по центру.
- контейнер, с помощью которого создаётся простая ячейка. Сколько таких тегов будет содержать строка (тег
, столько ячеек в ней и будет: один тег - одна ячейка.
-
позволяет группировать столбцы, быстро и не засоряя код задавать им общие характеристики. С помощью контейнера можно отделять логические части таблицы друг от друга. Располагается после тега
, если его нет, то после
.
-
используется для той же цели, что и
.
может содержать
, но не наоборот.
- span
- атрибут, задающий число столбцов, к которым применяются свойства контейнера
.
-
,
и
- контейнеры, которые позволяют разделить таблицу соответственно на верхнюю (заголовки), основную (тело) и нижнюю (итоговую) части. В HTML-таблице последовательность этих тегов такая же, как последовательность контейнеров
,
и в HTML-документе.
- colspan
нужен для объединения ячеек в строке. Значение атрибута содержит цифру, которая и задаёт количество объединяемых ячеек.
- rowspan
объединяет ячейки по столбцам.
Пример создания таблицы
Создайте документ формата HTML и скопируйте в него следующий код:
Пример таблицы
Инструменты создания сайтов
Назначение | Инструмент |
Разметка | HTML | XHTML |
Оформление | CSS |
Разработка | PHP | Python |
В браузере документ будет выглядеть так: Разберём, какие строчки кода за что отвечают.
- открыли таблицу, задав ей толщину рамок.
-
Инструменты создания сайтов
- озаглавили её.
- открыли строку.
Назначение |
- создали ячейку с оформлением заголовка.
Инструмент |
- создали вторую заголовочную ячейку в строке. Параметром colspan указали, что эта ячейка должна занимать по горизонтали две.
- закрыли строку. Аналогично создали остальные строки.
Разметка |
HTML |
XHTML |
- добавили вторую строку таблицы уже с обычными, а не заголовочными, ячейками. Аналогично вставили последующие строки и ячейки.
- закрыли таблицу.
У меня таблица из двух ячеек. Первая ячейка имеет ширину 200px, в нее вставляется изображение размером 200px*1000px, изображение выравнивается по верхнему краю: align="top", атрибуты cellspacing и cellpadding для всей таблицы установлены "0". Содержимое второй ячейки небольшое, много места не занимает, так что высота таблицы определяется вертикальным размером моего изображения. Но почему-то между нижней границей изображения и нижней границей таблицы появляется небольшой зазор - пикселей пять, хотя, как я сказала, cellpadding="0". Откуда берется этот ужасный зазор? У меня изображение является декоративным элементом, оно должно пройти по краю страницы сверзу донизу, этот пустой промежуток все портит.
Алина, проследите, чтобы вслед за закрывающей скобкой тега сразу шёл закрывающий :
...![](/assets/" alt=)
в противном случае, пробел, перевод строки или символы табуляции будут показываться, как тот самый пробел.
Кроме того, выравнивать содержимое ячейки лучше не через align="top" в , а добавив valign="top" в тег .
Проще всё равно пользоваться поиском с регэкспами, но предмета спора нет никакого — всё зависит от ситуации и надо использовать любой из двух приемлемых методов (например, если изображение является inline-image, то есть вставляется в строку текста, то не спасёт).
Ладно. Скорее всего, верный совет/ответ дан Алексеем сразу же во втором постинге; конструкции типа ![](/assets/" alt=)
| mustdie forever, а тот факт, что ошибку быстрее скрыть, чем исправить ("Проще добавить к тысяче картинок в ячейках быэр чем жать бекспейс и убирать пробелы в этих ячейках после картинок") ещё не означает, что к уже имеющимся ошибкам нужно добавлять новые - практика показывает, что спрятанные ошибки имеют препоганое (но логичное) свойство всплывать потом в самых неожиданных местах.
Марьяна: очень интересное наблюдение относительно hspace=0, vspace=0 - я никогда не наблюдал, чтобы явное указание нулевых отступов в картинках что-то меняло. Буду благодарен за пример (просто любопытно:-)).
Владислав Пустынский, вы зря так про и бэкспейсы.
- лиш часный случай.
Но я все-же решусь отметить, что более общее решение это все-же после .
Вполне типовая задача:
. . .
![]()
И независимо ни от чего картинка будет сразу "под таблицей" без всяких отсутпов.
Хотя, конечно, этот пример не отрицает, что надо писать без "энтеров" и пробелов после .
Владислав Пустынский: Да, я себе буду благодарна тоже:) Как только поймаю - скажу. Как-то я пыталась экспериментировать и ничего не получилось, я засомневалась в своем подозрении, но потом в работе опять несколько раз всплывал такой же случай... На досуге повтыкаю...
Dmitriy: боюсь, я не вполне понял типовую задачу... В сочетании
картинка будет сразу под таблицей без всяких отступов в любом случае, ставите Вы разрыв строки после картинки или нет. Другого ждать не приходится: таблица - блочный элемент. Вертикальный отступ между таблицей и картинкой может появиться, лишь если его туда поставить явно (не пишите | | ! это неправильно! можно только ,
И т. п.!) Мне даже непонятно, на что может повлиять после картинки кроме как на положение следующих за картинкой элементов:-) Или не понял я чего...
После особенно эффективен в тех случаях (и является единственным решением, между нами говоря), когда не вложен ни во что больше, то есть „сам по себе“. Тогда после него не образуется никаких подвисших пробелов и „неправильных“ отступов.
Самым надёжным способом избежания появления лишних пробелов (согласование четырёх имён в родительном падеже:-)) является нерасстановка этих пробелов в процессе вёрстки страницы (три имени в родительном падеже). Не нужен пробел после картинки - НЕ СТАВЬТЕ ЕГО!!!
Сравните конструкции:
- гадкий промежуток имеется. Мы можем, конечно, поставить после картинки . Логики это документу не прибавит, но возникнет угроза, что какой-нибудь броузер завтрашнего дня будет действовать логичнее и не станет по собственному произволу игнорировать пустые строки в самом верху и самом низу таблицы (такое поведение нигде не документировано, насколько мне известно). Не проще ли убить саму ошибку, чем вышибать её другой ошибкой? Кстати, подстановка или вместо приводит к тому же "положительному" результату, хотя и нарушает вдобавок ещё и нестинг... :-(
Ага, пробел убрала, все сразу нормально получилось:)
Да, а выравнивание у меня в теге ячейки и стояло, ошиблась я с align="top"
А вот что за идея поставить ?? В чем тут фокус? Когда я у себя поставила зазорище стал еще больше, так что я вас не пойму... Изображение не вставляется в строку, оно служит фоном для меню...
И что такое "регэксп" можно спросить?
И зря вы, что автора проблема не интересует:)) Автора она очень даже интересует, только у автора интернета нет, вернее, есть, но только ночной, а по ночам сидеть я не привыкла:))
Простите, еще такой вопрос: а если я свое изображение в качестве фона использую, приписываю его вначале, а потом абсолютным позиционированием накладываю другие изображения-кнопки, то как же у меня после первого изображения может ячейка сразу закрыться? Кстати, еще один есть вопрос по этому поводу: когда я экспериментировала, пытаясь понять, откуда же берется проклятый промежуток (кстати, почему же броузер так интерпретирует разрыв строки?? У меня было:
![](https://i2.wp.com/Images86/menu86.gif)
,
но я читала, что такие разрывы строки броузер вообще никак не интерпретирует, если нет предварительного форматирования Это не всегда так, получается?),
так вот, когда я экспериментировала, то сделала ширину ячейки таблицы больше ширины изображения. И обнаружила, что правее изображения и чуть его ниже идет цветная полоса длиной примерно 5 пикселей. Тогда я убрала все свои кнопки и стала налагать их одну за другой. Поставила для них border="1" и обнаружила, что у первых двух изображений-ссылок рамка фиолетовая, а у остальных синяя (что это значит и почему так - не могу понять), и что моя полоска тоже имеет цвет переходящий из фиолетового в синий. И с каждой кнопкой полоска становится все длинее... Что же это такое, братцы?? Тогда я взяла и свое изображение-фон вставила не сразу после открытия ячейки, а перед ее закрытием, т.е. сначала, кнопки абсолютно отпозиционированные, а в конце уже фон. Полоска исчезла. Правда, на мой зазор это не повлияло:) Что это было, мне никто не растолкует??
И вот еще. Я считала, что раз у моих кнопок нет z-индекса, а фон я вставляю позже, то он должен наложиться на них и все закрыть. Но, очевидно, абсолютно отпозиционированные изображения и просто изображения - вещи качественно разные, и к ним обычный подход не применим, т.е. то, что пишется позже, накладывается сверху, если только у него нет более высокого z-индекса? Или у абсолютно-отпозиционированных изображений этот z-индекс заведомо больше, чем у обычных?
Алина, первый общий ответ в непонятных случаях, когда сложно описать эффект (со всевозможными режимами позиционирования и наложения) — „покажите ваш код, лучше ссылкой“.
По поводу нескольких из остальных вопросов я просто нарисую страницу с примерами. Так всем будет лучше.
Алина: прошу прощения за неверное заключение о пропаже у Вас интереса к вопросу:-)))
> откуда же берется проклятый промежуток (кстати,
> почему же броузер так интерпретирует разрыв строки?? У меня было:
>
>
> ,
> но я читала, что такие разрывы строки броузер вообще никак не интерпретирует
Всё просто. У Вас имеется ячейка. Посмотрите, какие элементы имеются в ячейке. Во первых, это картинка. Во вторых, это два сброса строки после неё. Поскольку дополнительной разметки нет, то броузер воспринимает каждый сброс строки, как пробел, а затем два полученных пробела превращает в один. Таким образом, в ячейке остаётся картинка и следующий за ней пробел, причём для броузера они располагаются в одном ряду. "Убивать" этот последний пробел броузер сам не станет - для него это совершенно законный символ. При вёрстке броузер стремиться максимально сжать ячейку по горизонтали. В связи с этим от разрывает имеющийся ряд из двух элементов, перенося последний из них (т. е. пробел) на новую строку. То есть разрыв рождается не из разрыва строки в Вашем коде, а из дополнительного элемента-пробела, который в Вашем коде присутствует неявно, представленный двумя сбросами строки.
Вторая часть Вашего вопроса (эксперименты с кодом) требуют источника. Покажите Ваш код, а лучше повесьте плоды экспериментов в Сеть.
Если Вы не задаёте явно z-индекс, то абсолютно и относительно позиционированные элементы действительно располагаются поверх статических элементов, причём позднее определённые элементы перекрывают раннее определённые и перекрывают все статические элементы (статические элементы не могут перекрываться в принципе, хотя иногда броузеры "глючит" и этот закон нарушается). Порядок перекрытия может быть изменён явным заданием z-индекса в стилях. По умолчанию, у всех элементов 0-й z-индекс, но абсолютно и относительно позиционированные элементы будут всегда располагаться поверх статических независимо от места их определения, если только в z-индексах не прописано иначе.
> почему неправильно писать: | ??
HTML - язык логической разметки, и такая конструкция нарушает логику документа. Любой документ состоит из блочных элементов, внутри блочных элементов располагаются строчные. Строчные элементы не должны располагаться вне блочных. В вышеописанной конструкции строчный элемент помещён в то место потока, где по определению отсутствует определение какого-либо блочного элемента, т. е. строчный элемент не является наследником никакого блочного элемента. Исправляю свою же ошибку: по указанной причине конструкция тоже неверна.
Ссылки
| |