这是我的问题,我想知道文本的实际长度(以像素为单位)(请注意,在某些字体中,各种字母的长度不同).我将使用它来更好地调整DBGrid中的列宽.
我有一个像这样的css表设置:
<div class='table'>
<div>
<span>name</span>
<span>details</span>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
该表的CSS是:
.table{
display:table;
width:100%;
}
.table div{
text-align:right;
display:table-row;
border-collapse: separate;
border-spacing: 0px;
}
.table div span:first-child {
text-align:right;
}
.table div span {
vertical-align:top;
text-align:left;
display:table-cell;
padding:2px 10px;
}
Run Code Online (Sandbox Code Playgroud)
当它站立时,两列在表格宽度占据的空间之间均匀分开.我试图让第一列只有占据它的单元格的文本所需的宽度
该表是未知宽度,列/单元格也是如此.
我通常会尝试在Excel中避免使用VBA,但是能够将文本键入单元格并使其列更宽或更窄以容纳输入或删除的文本时更方便.
当然,这将受制于列中其他单元格中文本的长度.
"键入时自动调整",我猜你可以称之为.
有一种简单的方法可以在合适的处理程序中执行此操作吗?
我有一个空白的Excel表保存为模板,我从剪贴板复制数据(源自网站).
有没有办法使用VBA在粘贴数据(文本)后自动调整每列的宽度到其内容?
编辑:我将始终从A1开始插入我粘贴的数据,并始终填充相同数量的列.
蒂姆,非常感谢.
我有一个2柱流畅的Twitter引导程序布局,并希望在其中一个窗格中使用iframe(它将包含Google任务窗口小部件 - https://mail.google.com/tasks/ig).如何正确设置宽度?我想出了如何设置样式,使其具有边框(将其区分为外部页面内容),但我无法使其正确填充其中一列.这就是我目前拥有的:
<iframe class="container well well-small"
style="width: 80%; height: 400px; background-color: #f5e5c5;"
src="https://mail.google.com/tasks/ig">
</iframe>
Run Code Online (Sandbox Code Playgroud)
完整示例(另存为HTML文件):http://pastebin.com/1u2QeuZk
原始问题:HTML是否<table>具有默认宽度?
最近有人在这些问题的某个地方问了一个问题,让我感到疑惑.
以此为例.
在这个小提琴中,如果你要检查它的宽度(我正在使用chrome中的inspect元素),它会100px按预期工作.
让我们再添加几个"td",我们将看到td:100px"css"被忽略了.
如您所见,现在它是83px而不是100px最初的预期.
但是,让我说,我回到更少的TD(7),并且我为每个TD元素(500px)添加更宽的宽度,结果是td的宽度被卡住了119px.
最后,假设我有一个2000px宽度的表,宽度的td 100px和许多td元素.
http://jsfiddle.net/rqmNY/7/
现在表宽度会覆盖TD宽度,并将td的宽度扩展为222px.
谁能解释这种行为?
ps请注意,在所有情况下,inspect元素工具告诉我宽度始终对应于css,它只是最终结果没有正确显示.
我需要用CSS布局一个html数据表.
表的实际内容可能不同,但始终有一个主列和两个或更多其他列.我想使主列占用尽可能宽的宽度,无论其内容如何,而其他列占用的宽度尽可能小.我无法为任何列指定确切的宽度,因为它们的内容可能会发生变化.
我怎么能使用一个简单的语义上有效的html表和css来做到这一点?
例如:
| Main column | Col 2 | Column 3 | <------------------ fixed width in px -------------------> <------- as wide as possible ---------> Thin as possible depending on contents: <-----> <-------->
有没有办法自动调整列宽以适应尽可能多的内容(有点像双击列宽是一个网格控件).
目前我将它们设置为百分比,但由于根据搜索条件有不同的内容,我希望适当调整列宽.
我目前正在设置宽度如下:
var table = new PdfPTable(9) {WidthPercentage = 100};
var colWidthPercentages = new[] {6f, 10f, 10f, 10f, 20f, 20f, 8f, 8f, 8f};
table.SetWidths(colWidthPercentages);
Run Code Online (Sandbox Code Playgroud)
有没有人知道如何做到这一点,或者如果没有,找到一个列需要适合其内容的最佳宽度?
现在,我看到指定列网格宽度的唯一方法是向列定义添加width属性,如:
columnDefs: any[] = [
{
headerName: 'ID',
field: 'id',
width: 50,
type: 'numericColumn'
}
];
Run Code Online (Sandbox Code Playgroud)
但正如我们在下面的示例中所看到的,网格列未占据屏幕显示的整个宽度.
https://stackblitz.com/edit/ag-grid-bss-test-nnojxg?file=app%2Fapp.component.ts
我希望能够为每列设置百分比宽度,但我无法找到如何执行此操作.
使用width: 10%不起作用.
这有什么解决方法吗?
我尝试在使用HTMLTable时调整NameWidth但没有成功。
考虑这些设置(# = 注释):
<IfModule mod_autoindex.c>
IndexOptions FancyIndexing
IndexOptions HTMLTable
IndexOptions IconsAreLinks
IndexOptions SuppressDescription
IndexOptions SuppressLastModified
IndexOptions SuppressColumnSorting
#IndexOptions IconWidth=20
#IndexOptions IconHeight=20
IndexOptions NameWidth=*
IndexOrderDefault Descending Name
HeaderName header.html
ReadmeName footer.html
</ifModule>
Run Code Online (Sandbox Code Playgroud)
通过上述设置,浏览器内的目录列表显示“名称”列的宽度几乎不比最长文件名的宽度宽。文件名不会被截断,但最长文件名的右边缘距下一列仅 1 个字符。 我希望使“名称”列比最长的文件名更宽,因此文件名的右侧与右侧的下一列之间有更多的空格分隔。 我可以通过删除或注释掉“IndexOptions HTMLTable”来实现这一点(水平添加额外的空格)。但是禁用“HTMLTable”会导致图标不再与其关联的文件名垂直居中。是的,我希望保留这些图标。更改 IconWidth 和 IconHeight 并不能解决垂直居中问题。我使用 header.html 和 footer.html 添加页面标题和返回链接,但这些文件不会影响目录列表内容。
我该如何解决这个问题?
谢谢。
column-width ×10
css ×4
css-tables ×2
excel ×2
html ×2
vba ×2
ag-grid ×1
angular ×1
apache ×1
c# ×1
caption ×1
delphi ×1
font-size ×1
html-table ×1
itext ×1
percentage ×1