У меня есть таблица сетки на моей странице, которая расширяется за пределы ширины страницы, хотя у меня максимальная ширина: 100% установлена в нескольких местах. Вот мой заказ CSS для таблицы (это в .gridTable класса):max-width: 100% не работает
gridTable{
border-top: 1px solid #dddddd;
border-collapse: collapse;
border-spacing: 0;
float:left;
table-layout: fixed;
max-width: 100% !important;
}
Существует один столбец, который имеет очень длинные данные, и выводит таблицу, чтобы стать слишком широкими. Я попытался ограничить что скрывающим перелив:
div.gridTable tbody > tr > td:nth-last-child(2) {
max-width:100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
Однако даже при всем этом, моем столе еще проходит мимо ширины страницы, когда у меня есть длинные данные в этом столбце. Когда я проверяю элемент, я вижу, что он имеет все ограничения на максимальную ширину: 100% и даже некоторые унаследованы от файла bootstrap.css для класса таблицы, но по какой-то причине они ничего не делают; он просто расширяется настолько, насколько это необходимо, и добавляет полосу прокрутки.
Все работает, если я устанавливаю ширину для одного столбца проблемы на фиксированное количество пикселей, но, очевидно, я не хочу этого делать, потому что он должен быть другого размера в зависимости от размера экрана.
EDIT: Это не тот же вопрос, что и this question, потому что решение этого вопроса состояло в том, чтобы добавить слово-break: break-word, чтобы сломать строки в нужном размере. Тем не менее, это заставляет их переносить на другую строку, и я не хочу никакой упаковки, я хочу скрыть переполнение. Когда я включаю код, чтобы скрыть переполнение, как я сейчас делаю, слово-break: слово-слово-код ничего не меняет.
EDIT 2: я определяю мою таблицу из DataTable дт, и связывание данных в коде позади:
GridView1.DataSource = dt;
GridView1.DataBind();
Вот HTML:
<div class="gridTable">
<asp:GridView runat="server" ID="GridView1" >
</asp:GridView></div>
пожалуйста, вы можете сделать и поделиться jsfiddle? – bhansa
Что происходит, когда вы удаляете пустое пространство: nowrap? –
'float' требует элемента ширины, из которого затем сравнивается максимальная ширина. Поплавок с максимальной шириной немного похож на ипотеку, но не имеет дома. Без 'width' float становится' inline-block' и будет расширяться, чтобы соответствовать его содержимому – Martin