Действительно ли необходимо добавить cellspacing = «0» cellpadding = «0» в <столе>?

Эрик meyer перезагрузил css, предлагает, чтобы «столам все еще было нужно 'cellspacing = «0»' в повышении». Действительно ли это необходимо? и каково преимущество border-collapse: collapse; и border-spacing: 0;?

и это только предлагает использовать cellspacing, в то время как у стола есть другая собственность, названная cellpadding?

/* tables still need 'cellspacing="0"' in the markup */
table {
        border-collapse: collapse;
        border-spacing: 0;
}
20
задан Darryl Hein 16 January 2010 в 17:47
поделиться

3 ответа

Можно предварительно распределить вектор с помощью .reserve, если есть представление о том, насколько велик «средний» файл.

Эффективность - сложная игра. Не играйте трюки на ранней стадии и разработайте хороший базовый алгоритм. Если это недостаточно быстро, вы начинаете смотреть на процедуры ввода-вывода, создаете ли вы какие-либо «лишние» объекты (явно или неявно, особенно если вы передаете параметры вокруг).

В вашем примере вы можете сделать второй вызов часов () перед печатью итоговых выходных данных - получите несколько более точное время!:)

-121--3702299-

Существует два типа границ в таблице, сама таблица может иметь границы (внешние границы и границы между ячейками), и каждая ячейка может иметь границы вокруг них.

Использование border-collapse: collapse; означает, что две ячейки с одинаковыми настройками границы рядом друг с другом получат только один набор границ вместо двойного, например, правая граница одной ячейки будет свернута с левой границей на следующей ячейке в строке.

Отсутствует стиль CSS для границы таблицы между ячейками до 2 CSS, поэтому его необходимо отключить с помощью атрибута HTML cellspacing = «0» в таблице для поддержки старых браузеров, таких как IE 7 *. Если между ячейками имеются границы таблицы, свертывание границы, естественно, не будет работать, поскольку границы не находятся рядом друг с другом.

* Мне действительно понравилось называть IE 7 «старым браузером»;)

-121--2219337-

cellpadding не предлагается, поскольку свойство набивок css в достаточной степени переопределяет свойства по умолчанию для атрибута таблицы cellpadding . Как говорится в другом ответе, в более старых браузерах отсутствует совместимое свойство CSS для cellspacing , оставляя атрибут HTML в качестве единственного способа полного «сброса» этого настраивать в 0. border-spacing: 0; заботится об этом для браузеров, которые поддерживают его.

Что касается border-collapse - по умолчанию каждая ячейка таблицы имеет собственную границу, и collapse будет объединять границы между соседними ячейками вместе, создавая видимость (обычно однопиксельной) сетки, которая не может быть достигнута другим способом, когда cellspacing = «0» . До того, как border-collapse получил поддержку, таблицы с cellspacing = «1» и цветом фона на таблице и белым фоном на ячейках таблицы.

граница-коллапс: коллапс; находится в reset.css просто потому, что это наиболее распространенный желаемый результат. Если вы не хотите использовать этот режим, вы можете удалить его из reset.css.

11
ответ дан 30 November 2019 в 01:13
поделиться

В таблице есть два типа границ, сама таблица может иметь границы (внешние границы и границы между ячейками), и каждая ячейка может иметь границы вокруг них.

Использование пограничного коллапса: коллапс; означает, что две ячейки с одинаковыми настройками границы рядом друг с другом будут получать только один набор границ вместо двойного, например, Правая граница одной ячейки будет разрушаться с левой границей на следующей ячейке в ряд.

Там нет стиля CSS для границы стола между ячейками до CSS 2, поэтому он должен быть отключен с использованием атрибута HTML CellSpacing = «0» на таблице для поддержки старых браузеров, таких как IE 7 * Отказ Если между ячейками есть таблицы границ, граница, естественным образом не будет работать, так как границы не рядом друг с другом.

* Я действительно наслаждался ощущением призыва IE 7 «старшего браузера»;)

2
ответ дан 30 November 2019 в 01:13
поделиться

Internet Explorer 6 и 7, и, вероятно, другие ранние браузеры, не распознают атрибут border-spacing , и поэтому он предлагает вам по-прежнему предоставлять значения и в HTML.

Проверьте таблицу совместимости на SitePoint

6
ответ дан 30 November 2019 в 01:13
поделиться