#html #jquery #html-table
Вопрос:
У меня возникла проблема с плагином WordPress, который создает таблицу, но оставляет информацию о ней на мобильном телефоне. Я хочу, чтобы текст/данные «data-th» отображались перед данными таблицы.
Пример того, чего я хочу достичь
<*h4 class="someClassName">Article Name</h4*><br>BBD4<br><*h4 class="someClassName2">NFF</h4*><br>000-0000
и т.д.
Я хочу использовать jQuery для захвата data-th
и вставки («.табличное значение»).перед.
<tr id="table-row-576" class="table-row even" role="row">
<td data-th="Article name" class="table-value-at table-value">BBD482</td>
<td data-th="NFF" class="table-value-at table-value">111-0000</td>
<td data-th="Width" class="table-value-at table-value">250 - 370 mm</td>
<td data-th="weight" class="table-value-at table-value">13 kg</td>
<td data-th="Quantity" class="table-value-qt table-value"></td>
</tr>
Комментарии:
1. Я не могу понять, что ты имеешь в виду. Можете ли вы переписать то, что у вас есть в первую очередь, и то, что вы хотите во вторую. Пожалуйста, отформатируйте часть «чего я хочу достичь», как 2-ю часть вашего текущего вопроса. Удалите звездочки, если они на самом деле не являются частью результата. Также покажите нам, что вы пробовали.
2. Добро пожаловать в Stack Overflow. Вместо этого вы можете рассмотреть возможность корректировки этого с помощью CSS.
Ответ №1:
Рассмотрим следующее решение CSS.
@media only screen and (max-device-width: 480px) {
table.myTable thead th {
display: block;
}
}
<table class="myTable">
<thead>
<tr>
<th>Article Name</th>
<th>NFF</th>
<th>Width</th>
<th>Weight</th>
<th>Quantity</th>
</tr>
</thead>
<tbody>
<tr id="table-row-576" class="table-row even" role="row">
<td data-th="Article name" class="table-value-at table-value">BBD482</td>
<td data-th="NFF" class="table-value-at table-value">111-0000</td>
<td data-th="Width" class="table-value-at table-value">250 - 370 mm</td>
<td data-th="weight" class="table-value-at table-value">13 kg</td>
<td data-th="Quantity" class="table-value-qt table-value"></td>
</tr>
</tbody>
</table>
Чтобы увидеть это в действии, отобразите фрагмент целиком на странице, а затем измените размер окна. Как только он станет меньше 480 пикселей, как у мобильного телефона, он сделает каждый из них блочным дисплеем, поэтому каждый из них находится на своей отдельной линии.
Вы также можете сделать это с помощью jQuery. Это просто требует события для проверки window
document
ширины или. CSS просто сделает это, несмотря ни на что.
В WordPress часто лучше всего создавать стандартные HTML-элементы. Поэтому, если вы создаете таблицу с помощью jQuery, обязательно создайте все необходимые элементы. Чтобы настроить внешний вид, просто используйте CSS, либо непосредственно встроенный (предпочтительно), либо через CSS. Таким образом, WP все еще может применять свои темы и стиль. Когда темы будут обновлены, вы не потеряете все свои настройки.
Комментарии:
1. Спасибо @twisty за то, что вернул меня к CSS, это решило мою проблему. Это не сработало должным образом при использовании display: block;. Но использовать
.table-value[data-th="Artikkelnavn"]:before { content: "Artikkelnavn: " !important; font-weight: 700; }
его было довольно ручной работой, так как было несколько вариантов, но он делал то, что я хотел.