Что мне нужно, это очень просто или, по крайней мере, должно быть, но после нескольких дней исследований я пришел, чтобы обратиться к stackoverflow, если кто-нибудь действительно знает, как это сделать ..Ответственные столбцы с процентной максимальной шириной
У меня есть 3 столбца контента, все из которых имеют расширяемый контент внутри. Ни один контент не очень широк, но он много (раз расширился). Мне нужно сделать это, чтобы при расширении содержимого в одном столбце он сокращал два других столбца до определенной суммы, и когда вы расширяете содержимое двух столбцов, оно выравнивается и т. Д. Затем столбцы должны иметь процент максимальный размер и минимальный размер (в процентах или статический), поэтому, когда столбцы расширяются, они не полностью сквовают остальные, и поэтому я могу установить максимальную «расширяемость» для каждого столбца. Ради простоты, вот пример, который бы мог сделать трюк, если только она работала:
<table width="100%"><tr>
<td style="min-width:200px; max-width:60%;">Col1ExpandableContent</td>
<td style="min-width:200px; max-width:50%;">Col2ExpandableContent</td>
<td style="min-width:200px; max-width:40%;">Col3ExpandableContent</td>
</tr></table>
Приведенный выше код не работает, конечно, но я уверен, что вы можете себе представить, как это будет работать если бы это произошло. Это именно то, что мне нужно, только то, что max-width по какой-то причине не работает с процентами по TD. Если вам нужна лучшая визуализация, я сделал скрипку, чтобы помочь проиллюстрировать проблему здесь: http://jsfiddle.net/m5xgcf3s/
Я не могу просто использовать минимальную ширину столбцов из-за характера содержимого, все они должны быть расширяемыми, но только определенная сумма. Я открыт для любого решения и любым способом сделать это, он не обязательно должен быть таблицей (это просто, что ширина и выравнивание TD в таблице по умолчанию отличная, если только она поддерживает процент максимальной ширины) или что угодно, если оно отвечает требованиям и не использует рамки (которые, надеюсь, в любом случае не нужны). Бонус, если он вообще не использует javascript, но БОЛЬШОЙ БОНУС, если вы найдете решение, которое допускает плавный анимированный размерный переход, все еще отвечающий требованиям. Также бонус, если вы можете объяснить мне, почему, черт возьми, максимальная ширина в процентах не работает на ячейках таблицы ...
Спасибо за помощь, ребята, но я сделал сценарий, который решил его я ... НЕТ фреймворков, НИКАКИХ jQuery, НИКАКИХ хаков, просто дайте TDs id и поставьте этот код;
<script type="text/javascript">
window.onresize=function setTDmaxwidth() {
var containerwidth = window.innerWidth;
if (containerwidth >= 400) {
document.getElementById("col1").style.maxWidth=((containerwidth * 0.6)+'px');
document.getElementById("col2").style.maxWidth=((containerwidth * 0.5)+'px');
document.getElementById("col3").style.maxWidth=((containerwidth * 0.4)+'px');
} else { }
}
</script>
Это имитирует процент макс ширины путем расчета доли ширины контейнера каждый раз, когда ее изменения размера (в данном случае контейнер 100% ширина из фрейма). Я оставлю вопрос без ответа, хотя любой пользователь может придумать другой ответ (с таблицей или без нее), надеюсь, тот, который разрешает анимацию перехода по ширине, или действительное объяснение того, почему процентная максимальная ширина не работает на TDs
вы хотите изменить размер td для определенного предела, Isnt? –
почти все, я хочу, чтобы td автоматически изменял размер в соответствии с его содержимым, поскольку он автоматически делает по умолчанию в стандартной таблице, но ограничен указанной величиной (например, с максимальным процентом) – KittenCodings
добавил мой пост, любезно попробуйте! –