Прежде всего, может быть, вам следует задуматься над тем, как вы генерируете свою таблицу, поскольку вы помещаете все в одну строку, а затем разделяете отдельные «строки» с помощью <br />
... но это ваше дело.
Чтобы указать ширину в css, вы можете, как говорили другие авторы, использовать:
.rightXMLSubCategory table {
width: 200px;
table-layout:fixed;
word-wrap:break-word;
overflow:hiden; /* Fallback for IE/Mac */
}
Очевидно, что для этого вам нужно ввести правильную ширину.Здесь у вас есть небольшой рабочий пример: http://jsfiddle.net/ramsesoriginal/Guj5y/2/
Вы также можете работать с min-width
и max-width
, но, к сожалению, Internet Explorer не очень хорошо их поддерживает.
РЕДАКТИРОВАТЬ: Я отредактировал приведенный выше пример и jsfiddle, когда увидел, что вы делаете.Если столбцов так много, что таблица не уместится внутри заданной ширины, она будет расширяться, игнорируя ширину и даже игнорируя возможные overlow:hidden;
.
Решение заключается в свойстве table-layout:fixed;
, котороеопределяет, что таблица должна быть в точности такой же ширины, как вы ее определили.так как это может испортить ваш текст (он может полностью перекрывать друг друга), вы можете добавить word-wrap:break-word;
, чтобы разбить слова на несколько строк.
table-layout:fixed;
довольно хорошо поддерживается, за исключениемIE / Mac (http://caniuse.com/#search=table-layout), word-wrap:break-word;
менее поддерживается (хотя http://caniuse.com/#search=word-wrap показывает иное, break-word
немного сложно ...), но вы можете оставить его там, так как он выиграл 'Это делает вас больно и делает ваш сайт перспективным.