【发布时间】:2013-04-03 21:29:05
【问题描述】:
我有一个使用这个的 JSF 2.0 页面:
<h:head>
<h:outputStylesheet name="screen.css" library="css" />
</h:head>
这很好地生成了这个 HTML:
<head>
<link type="text/css" rel="stylesheet"
href="/myapp/javax.faces.resource/screen.css.jsf?ln=css" />
</head>
当在浏览器中查看页面时,这非常有用。但是,我想使用这个嵌入在 HTML 页面中的样式表,该页面将通过电子邮件发送给用户。我不希望他们的电子邮件客户端从服务器加载样式表。我希望通过电子邮件发送给他们的文档是自给自足的,并且不受网站样式表更改(甚至不存在)的影响。
我希望 HTML 输出是这样的:
<head>
<style type="text/css">
...contents of screen.css here...
</style>
</head>
我试图通过使用这个来实现:
<h:head>
<style type="text/css">
<ui:include src="/resources/css/screen.css"></ui:include>
</style>
</h:head>
但是我收到了这个错误:
javax.servlet.ServletException: Error Parsing /resources/css/screen.css:
Error Traced[line: 1] Content is not allowed in prolog.
javax.faces.webapp.FacesServlet.service(FacesServlet.java:325)
如何让样式表的内容出现在文档的头部?
【问题讨论】: