CSS 扩展 – CSS 供应商前缀

CSS 供应商前缀

CSS 供应商前缀(有时也称为 CSS 浏览器前缀)用于 CSS 属性名中,以实现尚未标准化或某些浏览器支持有限的试验性或预发布 CSS 功能。供应商前缀用于标识支持这些功能的特定浏览器或浏览器版本。

主要浏览器供应商通常使用以下前缀来实现非标准的 CSS 功能:

根据 CSS 规范,特定于 CSS 供应商的扩展必须以破折号或下划线开头,格式如下:

['-' or '_'] + [vendor identifier] + ['-'] + [name]

例如,webkit-border-radius 是一个供应商前缀属性,可让您在基于 WebKit 的浏览器(如 Chrome 浏览器)中将元素的边角变圆,以创建具有视觉吸引力的现代设计。

Aspose CSS 扩展 – Java 示例

Aspose.HTML 库使用的前缀看起来像 -aspose-,可为您提供一些试验性功能。以下是使用 -aspose- 前缀可以启用的 CSS 功能列表:

NameDescription
currentPageNumberThis function returns the number of the current rendering page.
totalPagesNumberThis function returns the number of the total pages in the document.

接下来的代码片段演示了如何使用 CSS 扩展来创建自定义的文档页边距标记:

  1. 初始化 Configuration 类的实例。
  2. 使用 getService() 方法从配置中获取用户代理服务实现。
  3. 使用 setUserStyleSheetU() 方法定义页面边距、内容位置以及页面计数器和标题样式的 CSS 规则。
    • 这里使用了 CSS 属性 -aspose-content 来定义右下角区域显示的内容。它包含了 currentPageNumber()totalPagesNumber() 函数,这两个函数由 Aspose.HTML 库提供,用于动态生成当前页码和总页数。
    • 此外,CSS 扩展 -aspose-content 还定义了顶部中心区域显示的内容。它将内容设置为字符串“Hello, World Document Title!!!”。
  4. 使用 HTMLDocument 类初始化 HTML 文档。
  5. 创建一个 XpsDevice 实例,并指定保存渲染文档的输出文件路径。
  6. 使用 renderTo(device) 方法将 HTML 转换为 XPS。
 1// Add custom page margins, header, and footer using CSS @page rules in Aspose.HTML for Java
 2
 3//  Initialize a configuration object
 4Configuration configuration = new Configuration();
 5
 6// Get the User Agent Service
 7IUserAgentService userAgent = configuration.getService(IUserAgentService.class);
 8
 9// Set a style of custom margins and create marks on it
10userAgent.setUserStyleSheet(
11        "@page {\n" +
12                "  /* Page margins should be not empty in order to write content inside the margin-boxes */\n" +
13                "  margin-top: 1cm;\n" +
14                "  margin-left: 2cm;\n" +
15                "  margin-right: 2cm;\n" +
16                "  margin-bottom: 2cm;\n" +
17                "  /* Page counter located at the bottom of the page */\n" +
18                "  @bottom-right {\n" +
19                "    -aspose-content: \"Page \" currentPageNumber() \" of \" totalPagesNumber();\n" +
20                "    color: green;\n" +
21                "  }\n" +
22                "  /* Page title located at the top-center box */\n" +
23                "  @top-center {\n" +
24                "    -aspose-content: \"Hello, World Document Title!!!\";\n" +
25                "    vertical-align: bottom;\n" +
26                "    color: blue;\n" +
27                "  }\n" +
28                "}");
29//  Initialize an HTML document
30HTMLDocument document = new HTMLDocument("<div>Hello, World!!!</div>", ".", configuration);
31
32//  Initialize an output device
33XpsDevice device = new XpsDevice("output.xps");
34
35// Send the document to the output device
36document.renderTo(device);

建议

您可以从 GitHub 下载完整的示例和数据文件。

Close
Loading

Analyzing your prompt, please hold on...

An error occurred while retrieving the results. Please refresh the page and try again.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.