我想在网页中显示带有行号的源代码。 (不幸的是,我不能使用现有的突出显示组件,如 google-code-prettify,因为我必须使用我自己的语法分析器。)
为了防止行号与源代码一起复制和粘贴,我使用了一个包含一行和两个单元格的表格:第一个单元格中有行号,第二个单元格中是源代码:
<html><body>
<table>
<tr>
<td>1<br/>2<br/>3</td>
<td>
<pre>int main() {
println("I am a very looooooooooooooooog source code line.")
}</pre>
</td>
</tr>
</table>
</body></html>
这行得通,但我遇到长源代码行的问题:表格变得非常宽。如果我打断长行,左侧的行号将不再正确。
最好的解决方案是一个表格,用户可以滚动宽行,就像 this example from GitHub在第 88 行。我尝试使用各种 CSS 参数,例如 overlay
、width
、white-space
,但我没有从 GitHub 获得结果.
如何在没有滚动条的表格中滚动垂直长行?
(或者是否有更好的解决方案来显示没有表格的带有行号的代码?我见过使用有序列表或文本区域的解决方案,但它们也有问题。)
最佳答案
尝试这样设置代码表单元格:
<td>
<div class="scrollable">
<pre>int main() {
println("I am a very looooooooooooooooog source code line.")
}</pre>
</div>
</td>
并上课:
.scrollable {
overflow: scroll;
}
关于html - HTML 表格中长行的垂直滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14876825/