У меня есть таблица со свойством table-layout: исправлено; и я пытаюсь изменить его ширину, когда я изменяю размер экрана, используя javascript, принимая в качестве ссылки один родительский элемент, если я изменяю размер на лету, таблица сохраняет прежнюю ширину, и мне нужно перезагрузить страницу, чтобы снова адаптировать ее к нужному размеру
function setWidth() { var parentWidth = $('#width-ref').width(); $('#table').width(parentWidth); } $(document).ready(function () { setWidth(); }); $(window).resize(function () { setWidth(); });
#width-ref { table-layout: fixed; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div id="width-ref"></div> <table> <thead> <th>first</th> <th>second</th> </thead> <tbody> <tr>first</tr> <tr>second</tr> </tbody> </table>
Удалите значение свойства css 'fixed', примененное к макету таблицы, и сделайте его автоматическим.
макет таблицы: авто;
И примените ширину к динамически из JavaScript.