Размер табуляции в CSS

В CSS3 есть хорошее свойство tab-size, оно контролирует размер, в пробелах, отображаемой табуляции. Оно пока в стадии черновика; например, неизвестно будет ли введена новая единица измерения (скажем «sp») и можно ли будет указать размер в процентах, пикселях и т.п.

Тем временем, свойство уже реализовано в некоторых браузерах, с собственным префиксом. Свойство первым поддержала «Опера» (с версии 10.60, именно от этой компании и было выдвинуто предложение добавить это свойство в CSS3), затем оно было реализовано в четвёртой версии FireFox. Остальные браузеры пока не подтянулись.

Вот как выглядит CSS-код:
body {
    -o-tab-size: 4; /* размер табуляции — 4 (для Оперы 10.60+) */
    -moz-tab-size: 4; /* размер табуляции — 4 (для FireFox 4+) */
    -webkit-tab-size: 4; /* для будущих версий Safari и Chrome */
     tab-size: 4; /* размер табуляции — 4, на будущее */
}
Значение по-умолчанию для этого свойства — 8 (пробелов), так же можно указать специальное значение «inherit», в этом случае значение будет унаследовано от родительского элемента.

Добавлено позднее: для WebKit уже есть патч для поддержки свойства «-webkit-tab-size».
10 апреля 2011 09:55

Роман Янковский (roman.yankovsky.me)
10 апреля 2011, 11:47

Странно, что такой очевидной казалось бы вещи, нет в CSS с самого начала.

bolk (bolknote.ru)
10 апреля 2011, 11:52, ответ предназначен Роман Янковский (roman.yankovsky.me):

+1

Артур (инкогнито)
10 апреля 2011, 13:51

А зачем это свойство вообще нужно? Есть хоть какой-никакой пример? Может, конечно, сгодиться в тегах «pre», но, пффф…

bolk (bolknote.ru)
10 апреля 2011, 14:15, ответ предназначен Артуру

Мне, вот, нужно. Чтобы листинги программ компактнее смотрелись.

boltai-shaltai (инкогнито)
10 апреля 2011, 23:21

Фе, код с табуляцией?!

Есть ли другие примеры, где может пригодится это свойство?
Табуляция вообще выглядит жутким атавизмом. Странно, что модная спецификация поддерживает её жизнь. Чудеса.

bolk (bolknote.ru)
10 апреля 2011, 23:41, ответ предназначен boltai-shaltai

Фе, код с табуляцией?!
Да, код с табуляцией.
Есть ли другие примеры, где может пригодится это свойство?
Не знаю. То, что для меня ценно, я уже написал. Возможно есть что-то ещё, но мне это не интересно.
Табуляция вообще выглядит жутким атавизмом.
Почему это?

boltai-shaltai (инкогнито)
11 апреля 2011, 13:38

Ну на тему табуляция vs. пробелы аргументы давно озвучены, чего их повторять.
Мне казалось, что все здравомыслящие люди используют пробелы. Совсем все, без исключений. Слишком всё однозначно.

Корпоративные стайлгайды всяких авторитетных контор тоже почти хором говорят о пробелах. Я тему сильно не изучал, конечно, но предпочтений табуляции не встречал никогда. И те яндексовые гайды, что мне попадались, тоже предписывали пробелы.

Атавизм - тоже понятно откуда. Моноширинность, матричные принтеры, листинги и т.п. Никакой разметки, никаких трутайпов, никаких em-ов. Единственным (!) способом форматирования на всех вообще девайсах были отступы.

Артур (инкогнито)
11 апреля 2011, 14:05, ответ предназначен boltai-shaltai

А можно какую-нить емкую ссылочку на статейку «пробелы vs. табы». Ну, так, чтобы прочитать и проникнуться, а не желтушную статейку с субъективным мнением.
А сам лично пользую табы — это же удобнее и быстрее, чем 4 пробела фигачить. Да и размеры табов всегда ставят на 4 пробела, не встречал еще 3 или 2, ыыы.

maxim-zotov (инкогнито)
11 апреля 2011, 14:14, ответ предназначен Артуру

Да и размеры табов всегда ставят на 4 пробела, не встречал еще 3 или 2, ыыы.
Для юниксовых утилит (редакторы, вьюверы) обычно по умолчанию 8.

boltai-shaltai (инкогнито)
11 апреля 2011, 14:26, ответ предназначен Артуру

пробелы vs. табы
нееет уж, увольте, в вашем случае налицо моторная привычка и предубеждённость. Вы ЛЮБОЕ высказывание на эту тему обзовёте "желтой статейкой" ;))
Сами вбивайте в яндекс "пробелы vs. табы" и обрящете дофига мнений.

Они все справедливы. Но при коллективной работе вся эта справедливость и демократия идут лесом.
А кустарь-одиночка может фигачить как угодно, лишь бы ему было хорошо.

bolk (bolknote.ru)
13 апреля 2011, 01:12, ответ предназначен boltai-shaltai

кустарь-одиночка может фигачить как угодно
Так же как *не* кустарь, но одиночка.

boltai-shaltai (инкогнито)
13 апреля 2011, 13:12, ответ предназначен bolk (bolknote.ru):

Так же как не кустарь, но одиночка.
я и не знал, что кустарь - это ремесленник, который фигачит именно _на дому_. Теперь знаю - спасибо за камент (и яндекс-словарям тоже спасибо).

Иван (инкогнито)
25 ноября 2011, 09:48

Товарищи, а разве свойство text-indent: 20px; уже не катит?

xema (инкогнито)
6 декабря 2011, 13:09

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

bolk (bolknote.ru)
6 декабря 2011, 15:31, ответ предназначен xema

Я в курсе холивара «табы версус пробелы», мне в нём участвовать не хочется.

taboman (инкогнито)
29 января 2012, 00:41

Для чего так рьяно отстаивать "эти ваши пробелы"? У вас батхерт что ли? Пользуйтесь ими на здоровье. Четырьмя байтами больше, четырьмя меньше, кому что... Меня лично табы в один байт больше устраивают.

Ваше имя или адрес блога (можно OpenID):

Текст вашего комментария, не HTML:

Кому бы вы хотели ответить (или кликните на его аватару)