Я пытаюсь сделать свойство ширины равным (100/3)%
, потому что я пытаюсь равномерно разделить ширину на 3 столбца. Но, очевидно, это недопустимый css. Каков правильный способ сделать это?
Ах, я не знал. Буду делать это в дальнейшем :)
чистый метод CSS:
th, td {
width: calc(100% / 7);
}
Метод Javascript: вы можете получить элементы таблицы и назначить стили, попробуйте следующее:
let th = document.getElementsByTagName('th');
let td = document.getElementsByTagName('td');
console.info(th, td)
for(let el of th){
el.style.width = (100 / 3) + 'px';
}
for(let el of td){
el.style.width = (100 / 3) + 'px';
}
<table>
<tr>
<th>Firstname</th>
<th>Lastname</th>
<th>Age</th>
</tr>
<tr>
<td>Jill</td>
<td>Smith</td>
<td>50</td>
</tr>
<tr>
<td>Eve</td>
<td>Jackson</td>
<td>94</td>
</tr>
</table>
Я знаю, что вы можете сделать это так, но есть ли способ сделать это прямо в таблице стилей без использования javascript?
Может быть, это ?? css-tricks.com/keep-math-in-the-css
Спасибо! Это больше похоже на то, что я пытался сделать. Спасибо вам обоим!
большой! ответ обновлен...
calc
это путь.
Просто не забудьте оставить пробел между операторами и операндами.
// This is correct
.class {
width: calc(100% - 5px);
}
// This produces an error
.class {
width: calc(100%-5px);
}