Tutaj cała strona * opakowalna jest zdefiniowana w pliku main.css
/* Wrappable cell
* Add this class to make sure the text in a cell will wrap.
* By default, data_table tds do not wrap.
*/
td.wrappable,
table.data_table td.wrappable {
white-space: normal;
}
Oto cała strona:
<%@ include file="../../include/pre-header.html" %>
<form id="commentForm" name="commentForm" action="" method="post">
<ctl:vertScroll height="300" headerStyleClass="data_table_scroll" bodyStyleClass="data_table_scroll" enabled="${user.scrollTables}">
<ctl:sortableTblHdrSetup topTotal="false" href="show.whatif_edit_entry? entryId=${entry.entryId}" />
<table class="data_table vert_scroll_table">
</tr>
<tr>
<ctl:sortableTblHdr styleClass="center" title="Comments" property="comment" type="top">Comments</ctl:sortableTblHdr>
</tr>
<c:forEach var="comments" items="${entry.comments}">
<tr id="id${comments.id}">
<td id="comments-${comments.id}" class="wrappable" style="width:400px;">${comments.comment}</td>
</tr>
</c:forEach>
<c:if test="${lock.locked || form.entryId < 0 }">
<%-- This is the row for adding a new comment. --%>
<tr id="commentRow">
<td><input type="text" id="comment" name="comment" size="50" maxlength="250" onkeypress="javascript:return noenter();" />
<a href="javascript:addComment();"><img src="../images/icon_add.gif" border="0" alt="Add"/></a>
</td>
</tr>
</c:if>
</table>
</ctl:vertScroll>
</form>
Po prostu rozciąga się za każdym razem, gdy się poddaję.
Ta strona również znajduje się wewnątrz elementu DIV. Czy muszę również ustawić szerokość elementu div i tabeli?
html
css
html-table
Doc Holiday
źródło
źródło
wrappable
?.wrappable
zdefiniowana klasa? jakiej przeglądarki używasz?max-width
. Jest wiele innych rzeczy, które mogą być problemem i nie można tego powiedzieć bez większej ilości informacji, ale tę można zepsuć.Odpowiedzi:
Użyj
table-layout:fixed
w tabeli iword-wrap:break-word
w td.Zobacz ten przykład:
PRÓBNY:
źródło
U mnie to działa.
Atrybut tabeli to:
źródło
źródło
overflow:hidden
Jeśli używasz responsywnej tabeli Bootstrap, po prostu chcesz ustawić maksymalną szerokość dla jednej konkretnej kolumny i zawijać tekst, dzięki czemu styl tej kolumny również działa
źródło
max-width
musi to byćpx
wartość, a nie%
To zadziałało, gdy musiałem wyświetlić „ładny” JSON w komórce:
Więcej o
white-space
nieruchomości :(Zobacz też więcej u źródła ).
źródło
Wystarczy dodać:
word-break: break-word;
do klasy tabeli.źródło
Jeśli chcesz naprawić kolumnę, ustaw szerokość. Na przykład:
<td style="width:100px;">some data</td>
źródło
Jest to inny sposób rozwiązania problemu, jeśli masz długie łańcuchy (takie jak nazwy ścieżek do plików) i chcesz przerwać tylko łańcuchy niektórych znaków (takich jak ukośniki). Możesz wstawiać znaki Unicode o zerowej szerokości tuż przed (lub po) ukośnikach w kodzie HTML.
źródło
Przetestowałem z danymi binarnymi i tutaj działa doskonale.
źródło