# XSL-FO 块
XSL-FO 的输出位于块区域中。
## XSL-FO 页面(Page)、流(Flow)以及块(Block)
内容"块"会"流"入"页面"中,然后输出到媒介。
XSL-FO 输出通常被嵌套在 <fo:block> 元素内,<fo:block> 嵌套于 <fo:flow> 元素内,<fo:flow> 嵌套于 <fo:page-sequence> 元素内:
```
<fo:page-sequence>
<fo:flow flow-name="xsl-region-body">
<fo:block>
<!-- Output goes here -->
</fo:block>
</fo:flow>
</fo:page-sequence>
```
## 块区域的属性
块是位于矩形框中的输出序列:
```
<fo:block border-width="1mm">
This block of output will have a one millimeter border around it.
</fo:block>
```
由于块区域是矩形框,所以可共享许多公共的区域属性:
* space before 和 space after
* margin
* border
* padding
![Content Margins and Padding](/wp-content/uploads/2013/10/img_boxmodel.gif)
**space before** 和 **space after** 是块与块之间起分割作用的空白。
**margin** 是块外侧的空白区域。
**border** 是区域外部边缘的矩形。其四个边均可有不同的宽度。它也可被填充为不同的颜色和背景图像。
**padding** 是位于 border 与 content 区域之间的区域。
**content** 区域可包含实际的内容,比如文本、图片、图形等等。
## 块边距(Block Margin)
* margin
* margin-top
* margin-bottom
* margin-left
* margin-right
## 块边框(Block Border)
边框样式属性:
* border-style
* border-before-style
* border-after-style
* border-start-style
* border-end-style
* border-top-style(等同于 border-before)
* border-bottom-style(等同于 border-after)
* border-left-style(等同于 border-start)
* border-right-style(等同于 border-end)
边框颜色属性:
* border-color
* border-before-color
* border-after-color
* border-start-color
* border-end-color
* border-top-color(等同于 border-before)
* border-bottom-color(等同于 border-after)
* border-left-color(等同于 border-start)
* border-right-color(等同于 border-end)
边框宽度属性:
* border-width
* border-before-width
* border-after-width
* border-start-width
* border-end-width
* border-top-width(等同于 border-before)
* border-bottom-width(等同于 border-after)
* border-left-width(等同于 border-start)
* border-right-width(等同于 border-end)
## 块填充(Block Padding)
* padding
* padding-before
* padding-after
* padding-start
* padding-end
* padding-top(等同于 padding-before)
* padding-bottom(等同于 padding-after)
* padding-left(等同于 padding-start)
* padding-right(等同于 padding-end)
## 块背景(Block Background)
* background-color
* background-image
* background-repeat
* background-attachment(scroll 或 fixed)
## 块样式属性(Block Styling Attributes)
块是可被单独样式化的输出序列:
```
<fo:block font-size="12pt" font-family="sans-serif">
This block of output will be written in a 12pt sans-serif font.
</fo:block>
```
字体属性:
* font-family
* font-weight
* font-style
* font-size
* font-variant
文本属性:
* text-align
* text-align-last
* text-indent
* start-indent
* end-indent
* wrap-option(定义自动换行)
* break-before(定义分页符)
* break-after(定义分页符)
* reference-orientation(定义 90" 增量的文字旋转)
## 实例
```
<fo:block font-size="14pt" font-family="verdana" color="red"
space-before="5mm" space-after="5mm">
W3CSchool
</fo:block>
<fo:block text-indent="5mm" font-family="verdana" font-size="12pt">
At W3CSchool you will find all the Web-building tutorials you
need, from basic HTML and XHTML to advanced XML, XSL, Multimedia and WAP.
</fo:block>
```
结果:
```
W3CSchool
At W3CSchool you will find all the Web-building tutorials you need, from basic HTML and XHTML to advanced XML, XSL, Multimedia and WAP.
```
请看上面的实例,如果要生成一个拥有许多标题和段落的文档,那么将会需要非常多的代码。
通常,XSL-FO 文档不会像我们刚才所做的那样对格式化信息和内容进行组合。
通过 XSLT 的些许帮助,我们就可以把格式化信息置入模板,然后编写出更纯净的内容。
您会在本教程后面的章节学习到如何使用 XSLT 模板来组合 XSL-FO。
- XML 基础
- XML 简介
- XML 用途
- XML 树结构
- XML 语法规则
- XML 元素
- XML 属性
- XML 验证
- 查看 XML 文件
- 使用 CSS 显示 XML
- 使用 XSLT 显示 XML
- XML Javascript
- XMLHttpRequest 对象
- XML Parser
- XML DOM
- XML to HTML
- XML 应用程序
- XML 进阶
- XML 命名空间
- XML CDATA
- XML 编码
- 服务器上的 XML
- XML DOM 高级
- XML 注意事项
- XML 相关技术
- 现实生活中的 XML
- XML 编辑器
- XML - E4X
- DTD 教程
- DTD 简介
- DTD - XML 构建模块
- DTD - 元素
- DTD - 属性
- XML 元素 vs. 属性
- DTD - 实体
- DTD 验证
- DTD - 来自网络的实例
- XML DOM
- XML DOM 简介
- XML DOM 节点
- XML DOM 节点树
- XML DOM 解析器
- XML DOM 加载函数
- XML DOM - 属性和方法
- XML DOM - 访问节点
- XML DOM 节点信息
- XML DOM 节点列表
- XML DOM 遍历节点树
- XML DOM 浏览器差异
- XML DOM - 导航节点
- XML DOM 获取节点值
- XML DOM 改变节点值
- XML DOM 删除节点
- XML DOM 替换节点
- XML DOM 创建节点
- XML DOM 添加节点
- XML DOM 克隆节点
- The XMLHttpRequest 对象
- XML DOM 节点类型
- XML DOM - Node 对象
- XML DOM - NodeList 对象
- XML DOM - NamedNodeMap 对象
- XML DOM - Document 对象
- XML DOM - DocumentImplementation 对象
- XML DOM - DocumentType 对象
- XML DOM - ProcessingInstruction 对象
- XML DOM - Element 对象
- XML DOM - Attr 对象
- XML DOM - Text 对象
- XML DOM - CDATASection 对象
- XML DOM - Comment 对象
- XMLHttpRequest 对象
- XML DOM Parse Error 对象
- XML DOM 解析器错误
- XSLT 教程
- XSL 语言
- XSLT 简介
- XSLT 浏览器
- XSLT - 转换
- XSLT <xsl:template> 元素
- XSLT <xsl:value-of> 元素
- XSLT <xsl:for-each> 元素
- XSLT <xsl:sort> 元素
- XSLT <xsl:if> 元素
- XSLT <xsl:choose> 元素
- XSLT <xsl:apply-templates> 元素
- XSLT - 在客户端
- XSLT - 在服务器端
- XSLT - 编辑 XML
- XML 编辑器
- XSLT 元素参考手册
- XSLT 函数
- XPath 教程
- XPath 简介
- XPath 节点
- XPath 语法
- XPath 轴(Axes)
- XPath 运算符
- XPath Examples
- XPath、XQuery 以及 XSLT 函数函数参考手册
- 函数参考手册
- XQuery 教程
- XQuery 简介
- XQuery 实例
- XQuery FLWOR 表达式
- XQuery FLWOR + HTML
- XQuery 术语
- XQuery 语法
- XQuery 添加元素 和属性
- XQuery 选择 和 过滤
- XQuery 函数
- XQuery 参考手册
- XLink 和 XPointer 教程
- XLink 和 XPointer 简介
- XLink 和 XPointer 语法
- XLink 实例
- XPointer 实例
- XLink 参考手册
- XML Schema 教程
- XML Schema 简介
- 为什么使用 XML Schemas?
- XSD 如何使用?
- XSD - <schema> 元素
- XSD 简易元素
- XSD 属性
- XSD 限定 / Facets
- XSD 复合元素
- XSD 空元素
- XSD 仅含元素
- XSD 仅含文本
- XSD 混合内容
- XSD 指示器
- XSD <any> 元素
- XSD <anyAttribute> 元素
- XSD 元素替换(Element Substitution)
- XSD 实例
- XSD 字符串 数据类型
- XSD 日期和时间数据类型
- XSD 数值数据类型
- XSD 杂项 数据类型
- XML 编辑器
- XML Schema 参考手册
- XSD 元素
- XSD 限定/Facets
- SOAP 教程
- SOAP 简介
- SOAP 语法
- SOAP Envelope 元素
- SOAP Header 元素
- SOAP Body 元素
- SOAP Fault 元素
- SOAP HTTP 协议
- SOAP 实例
- WSDL 教程
- WSDL 简介
- WSDL 文档
- WSDL 端口
- WSDL 绑定
- WSDL UDDI
- RSS 教程
- RSS 简介
- RSS 历史
- RSS 语法
- RSS <channel> 元素
- RSS <item> 元素
- RSS 发布您的 Feed
- RSS 阅读器
- RSS 参考手册
- RDF 教程
- RDF 简介
- RDF 规则
- RDF 实例
- RDF 主要 元素
- RDF 容器 Elements
- RDF 集合
- RDF Schema (RDFS)
- RDF 都柏林核心元数据倡议
- OWL 简介
- RDF 参考手册
- XSL-FO 教程
- XSL-FO 简介
- XSL-FO 文档
- XSL-FO 区域
- XSL-FO 输出
- XSL-FO 流
- XSL-FO 页面
- XSL-FO 块
- XSL-FO 列表
- XSL-FO 表格
- XSL-FO 与 XSLT
- XSL-FO 软件
- XSL-FO 参考手册
- SVG 教程
- SVG 简介
- SVG 实例
- SVG 在 HTML 页面
- SVG <rect>
- SVG <circle>
- SVG <ellipse>
- SVG <line>
- SVG <polygon>
- SVG <polyline>
- SVG <path>
- SVG <text>
- SVG Stroke 属性
- SVG 滤镜
- SVG 模糊效果
- SVG 阴影
- SVG 渐变 - 线性
- SVG 渐变- 放射性
- SVG 参考手册
- 免责声明