编辑指南-表格进阶教程
在表头定义整个表格样式
通常在{|
后接class="类样式名",可以引入早已经预制好的样式来定义表格的样式。这些样式可能预制在MediaWiki皮肤里也可能预制在MediaWiki:Common.css页面中。
<syntaxhighlight lang=css>
橘子 | 苹果 |
面包 | 饼 |
奶油 | 冰淇凌 |
</syntaxhighlight>
橘子 | 苹果 |
面包 | 饼 |
奶油 | 冰淇凌 |
控制宽度(style="width:")
控制表格整体宽度
{|
后除了接class="类样式名",还可以接style="..."定义整个表格的元素。
演示内容 | 源码 | 实际效果 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
将表格的整体宽度占满整个空间 |
<syntaxhighlight lang=css>
</syntaxhighlight> |
|
这个"width:100%"指表格的整体宽度占上一级元素宽度百分比。假如这个表格写在一个宽度只有70%的单元格或者<div>里例如:
演示内容 | 源码 | 实际效果 | ||||||
---|---|---|---|---|---|---|---|---|
外面的表格只占空间内的70%, 内部的表格占满整个空间(空隙是外部表格的内边距) |
<syntaxhighlight lang=css>
</syntaxhighlight> |
|
演示内容 | 源码 | 实际效果 | ||
---|---|---|---|---|
使用 标签控制外部整宽为70%, 内部的表格则占满这70%的整个空间 |
<syntaxhighlight lang=html> 只有70%宽的div
</syntaxhighlight> |
只有70%宽的div
|
以上以百分比宽度来举例,因为百分比宽度兼容不同的设备更好一些,也可以写成100px这种具体像素宽度,只不过在调整页面的时候会非常痛苦。
控制单元格的宽度
和控制表格整体宽度一样,也是通过style="width:"来实现,这里要额外说明几点:
- 如果表格整体没有定义宽度,那么单元格的百分比宽度就会失效。
- 单元格的最大宽度影响整列最大宽度。
- 缺省值默认补齐或寻找当前列的最大宽度。
具体的可以看如下的例子。
演示内容 | 源码 | 实际效果 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
控制单个单元格的宽度 左侧70%,右侧宽度的由整宽100%-70%=30% |
<syntaxhighlight lang=html>
</syntaxhighlight> |
| ||||||||
控制同一列2个单元格的宽度 左侧60%,右侧40% |
<syntaxhighlight lang=html>
</syntaxhighlight> |
| ||||||||
同一列,不同行设置的不同宽度,只会生效第一行的设置 |
<syntaxhighlight lang=html>
</syntaxhighlight> |
| ||||||||
不设置表头(即上一级元素)宽度时,单元格内设置的宽度不生效 |
<syntaxhighlight lang=html>
</syntaxhighlight> |
| ||||||||
同行内,不同列的一个单元格百分比,会按照另一个百分比的倍数显示宽度。 |
<syntaxhighlight lang=html>
</syntaxhighlight> |
| ||||||||
同行内,不同列设置多个百分比宽度时,相加超过整宽也无法生效。 |
<syntaxhighlight lang=html>
</syntaxhighlight> |
|
也可以使用固定的像素宽度来控制,但需要注意手机端等窄屏幕的显示适应问题。
源码 | 实际效果 | ||||
---|---|---|---|---|---|
<syntaxhighlight lang=html>
|
|
合并单元格(跨列:colspan)
演示内容 | 源码 | 实际效果 | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
跨列演示,右侧 |
<syntaxhighlight lang=html>
</syntaxhighlight> |
|
合并单元格(跨行:rowspan)
演示内容 | 源码 | 实际效果 | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
跨行演示,右侧 |
<syntaxhighlight lang=css>
</syntaxhighlight> |
|
内容对齐方向(text-align:)
控制表格整体对齐方向
演示内容 | 源码 | 实际效果 | ||||||
---|---|---|---|---|---|---|---|---|
默认为左对齐 text-align:left |
<syntaxhighlight lang=css>
</syntaxhighlight> |
| ||||||
居中对齐 text-align:center |
<syntaxhighlight lang=css>
</syntaxhighlight> |
| ||||||
居右对齐 text-align:right |
<syntaxhighlight lang=css>
</syntaxhighlight> |
|
控制单元格内容对齐方向
演示内容 | 源码 | 实际效果 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
表头控制整个表格的单元格默认居右 第一行的所有单元格,默认居右 第二行第一个单元格设置居中,第二格设置局左,第三格默认居右 |
<syntaxhighlight lang=css>
</syntaxhighlight> |
| ||||||||||||
第一行的为表格中文字默认的位置 第二行为使用 vertical-align:top 控制同行内单元格顶对齐 |
<syntaxhighlight lang=css>
</syntaxhighlight> |
|
单元格背景色(background-color:)
表格支持英文代码(red),16位代码(#FF0000)和RGB代码(255,0,0)
演示内容 | 源码 | 实际效果 | ||||||
---|---|---|---|---|---|---|---|---|
控制单元格背景的颜色 第一个单元格使用英文代码 green 设置颜色 |
<syntaxhighlight lang=css> </syntaxhighlight> |
|
单元格字体颜色(color:)
同background-color一样,支持英文代码(red),16位代码(#FF0000)和RGB代码(255,0,0)
演示内容 | 源码 | 实际效果 | |||||||
---|---|---|---|---|---|---|---|---|---|
控制单元格内文字的颜色 第一个单元格使用英文代码 green 设置颜色 |
<syntaxhighlight lang=css> |
</syntaxhighlight> |
|