Chr*_*ris 5 html css css-tables
我有一张桌子,里面有酒吧。我使用display: table-cell以对齐底部的内容。问题是容器divs 不再在其对应的THs 上水平对齐(它们的宽度未设置)
使用 - 属性时的问题table-cell是它的行为就像“真正的表格单元格”,而不再像block- 或 -inline元素。当父元素table-row和table丢失时,它们会匿名生成。所以盒子里会丢失所有类似的东西margin。
您可以在这里阅读更多相关信息:“可视化格式化模型中的表格”
\n\n我稍微重建了你的 HTML 结构,这似乎工作正常:
\n\nhttp://jsfiddle.net/insertusernamehere/XPSQG/
\n\n<style>\n\n #graph th {\n background: red;\n }\n\n #graph td {\n min-width: 30px;\n margin: 0;\n padding: 0;\n color: #222222;\n }\n\n #graph div {\n display: block;\n position: relative;\n margin: 0 auto;\n width: 30px;\n max-width: 30px;\n height: 100px;\n background-color: #EFEFEF;\n border: 1px solid #000000;\n }\n\n #graph span {\n position: absolute;\n left: 0;\n top: -20px;\n width: 100%;\n color: #222222;\n font-size: 16px;\n line-height: 16px;\n text-align: center;\n }\n\n #graph p.color {\n position: absolute;\n right: 0;\n bottom: 0px;\n width: 100%;\n margin: 0;\n color: #222222;\n }\n\n #graph p.color.c1 {\n background: #0f0;\n }\n\n #graph p.color.c2 {\n background: blue;\n }\xe2\x80\x8b\n\n</style>\nRun Code Online (Sandbox Code Playgroud)\n\n<div id="graph">\n <table>\n <tr>\n <td><div><p class="color c1" style="height:20px;"><span>1</span></p></div></td>\n <td><div><p class="color c2" style="height:30%;"><span>2</span></p></div></td>\n <td><div><p class="color c1" style="height:40%;"><span>3</span></p></div></td>\n <td><div><p class="color c2" style="height:50%;"><span>4</span></p></div></td>\n </tr>\n <tr>\n <th>1</th>\n <th>2</th>\n <th>3</th>\n <th>Some long value</th>\n </tr>\n </table>\n</div>\nRun Code Online (Sandbox Code Playgroud)\n\n它基本上将列的内容(绿色百分比<p>标签)放在底部。要将数字放在上面,您可以轻松地将它们放在<p>- 标签内,然后再次“将它们移出”。这是由这部分完成的:
top: -20px;\nfont-size: 16px;\nline-height: 16px;\nRun Code Online (Sandbox Code Playgroud)\n\n这表示行高和字体大小均为 16px。top: -16px设置将其完全移出就足够了- 额外的 4px 添加了一个很好的填充。:)
希望你能明白。
\n\n您在某个地方使用了此属性:
\n\ncountunit="0_1_0"\nRun Code Online (Sandbox Code Playgroud)\n\n由于这不是有效的 HTML,请使用 -data前缀:
data-countunit="0_1_0"\nRun Code Online (Sandbox Code Playgroud)\n\n这是有效的 HTML5,并且在旧版浏览器中也不会造成任何问题。
\n