-
div+css视频教程之表现与转换概述
与HTML不同,XML注重内容而不注重形式。XML文档本身不包含任何显示信息,要显示文档内容给用户观看,必须借助于其他手段——CSS(Cascading Style Sheets层叠样单)或XSL(Extensible Stylesheet Language可扩展样单语言)。
本来计划用于XML文档向XSL-FO(Formatting Objects格式化对象)转换的XSLT(XSL Transformations,XSL变换),却——无意插柳柳成荫——成为了(各类XML文档之间相互转换及将XML文档转换为其他各种文档类型的)热门文档转换标准。
本章介绍CSS和XSL的两个标准XSL-FO与XSLT。
l HTML——内容被形式掩盖(形式>内容)——使Web界面友好(机à人)
l XML——形式与内容分离(内容>形式)——适用于数据交换(机à机)
HTML版本:
l 0.9~1.0——注重内容ß源自SGML
l 2.0~3.2——注重形式àWeb成功
l 4.0~4.01——强调结构与外观分离ßCSS
其中:DSSSL = Document Style Semantics and Specification Language文档样式语义与规范语言(ISO/IEC 10179:1996),太庞大太完美,至今无软件能完全实现。
l 缺点——功能有限
n 需要浏览器支持(NS√ IE×√)
n 不能表现属性(只能表现元素内容)
n 不能添加其他显示内容
n 不能实现条件/选择处理
n 不需要浏览器的专门支持(如处理成HTML后再传给客户端)
n 可处理元素、属性与内容
n 可为输出添加元素和内容
n 能用任何语言输出,可使用封装或用户自定义函数
n 可使用条件处理、能排序/过滤后再输出
n 能实现复杂的页面布局和样式
l 缺点——复杂、对XSL-FO有争议(如可用CSS+DOM替代XSLT+XSL-FO)
有点像DTD与Schema的关系
本来计划用于XML文档向XSL-FO(Formatting Objects格式化对象)转换的XSLT(XSL Transformations,XSL变换),却——无意插柳柳成荫——成为了(各类XML文档之间相互转换及将XML文档转换为其他各种文档类型的)热门文档转换标准。
本章介绍CSS和XSL的两个标准XSL-FO与XSLT。
一、概述
1.形式与内容
HTML与XML的不同:l HTML——内容被形式掩盖(形式>内容)——使Web界面友好(机à人)
l XML——形式与内容分离(内容>形式)——适用于数据交换(机à机)
HTML版本:
l 0.9~1.0——注重内容ß源自SGML
l 2.0~3.2——注重形式àWeb成功
l 4.0~4.01——强调结构与外观分离ßCSS
2.展现
标记语言SGML、HTML与XML的表现方法如下表:内容 | 展现 | |
SGML | DSSSL | |
HTML | HTML | |
CSS | ||
XML | CSS | |
XSL | XSLTàXSL-FO | |
XSLTàHTML/PS(PDF)/SVG/… |
其中:DSSSL = Document Style Semantics and Specification Language文档样式语义与规范语言(ISO/IEC 10179:1996),太庞大太完美,至今无软件能完全实现。
3.CSS与XSL
1)CSS
l 优点——简单l 缺点——功能有限
n 需要浏览器支持(NS√ IE×√)
n 不能表现属性(只能表现元素内容)
n 不能添加其他显示内容
n 不能实现条件/选择处理
2)XSL
l 优点——功能强大n 不需要浏览器的专门支持(如处理成HTML后再传给客户端)
n 可处理元素、属性与内容
n 可为输出添加元素和内容
n 能用任何语言输出,可使用封装或用户自定义函数
n 可使用条件处理、能排序/过滤后再输出
n 能实现复杂的页面布局和样式
l 缺点——复杂、对XSL-FO有争议(如可用CSS+DOM替代XSLT+XSL-FO)
3)比较
特点 | CSS | XSL |
HTML可用 | √ | × |
XML可用 | √ | √ |
有转换语言 | × | √ |
语法 | CSS专用 | XML |
最新更新
Python获取微信好友数据
Python 的排序方法 sort 和 sorted 的区别
WinForm轻松实现自定义分页 (转载)
Mac系统下使用brew搭建PHP(LNMP/LAMP)开发环境
在win系统安装配置 Memcached for PHP 5.3 图文
箱图在数据预处理中的应用
Python WEB开发:用Tornado框架制作简易【表
自从学会了用python解析视频,都不用去找
Python代码阅读(第50篇):对列表间隔取
Python爬虫+数据分析+可视化展示,分析《
MongoDB常用命令(2)
MongoDB基本介绍与安装(1)
SQLServer触发器调用JavaWeb接口
SQL Server索引的原理深入解析
SqlServer2016模糊匹配的三种方式及效率问题
SQL中Truncate的用法
sqlserver 多表关联时在where语句中慎用tri
链接服务器读取Mysql---出现消息 7347,级别
SQL Server解惑——为什么你拼接的SQL语句换
MySQL视图了解一下
laf.js - 开源的云开发框架(README.md)
javascript创建对象
Node.js 源码分析 - 从 main 函数开始
Node.js 源码分析 - 原生模块(C++模块)的注册
ECharts图标中用的js相关的处理方法
GoJS 使用笔记
单元测试 - 测试场景记录
Node.js 源码分析 - 加载 js 文件
ES6入门
聊聊动效降级