html / php文件+ css内联问题

时间:2015-12-30 01:16:16

标签: php html css email inline

这是我的php文件,index.php

<html>
   <div id='hello'>Hello, <?php $name?>! How are you?</div>
</html>

这是我的css文件index.css

<style>
   #hello {
       font-size: 36px;
       color: red;
       border: 1px solid red;
   }
</style>

我正在尝试使用库https://github.com/tijsverkoyen/CssToInlineStyles将我的index.php文件转换为内联css。问题是,它转换关闭的php标签'?&gt;'为结束标记添加'?&amp; gt'。我知道该库的目标是HTML,我的文件是.php,但有没有办法阻止“>”代码转换为它的相应符号“&gt”?如果是这样,怎么样?

3 个答案:

答案 0 :(得分:3)

index.css应仅包含:

#hello {
  font-size: 36px;
  color: red;
  border: 1px solid red;
}

<style>是一个HTML标记,不应该来自.css文件。如果您在.css文件中包含它们,则整个文件将无效。

答案 1 :(得分:1)

不,它(因为它应该)为你逃避这些角色。你的css文件永远不应该包含html。

删除<style></style>标记,它应该有用。如果您将css放入html

,则只需要这些内容

答案 2 :(得分:1)

对于你发布的内容,简短的回答是否定的。至少在没有调整库的情况下(正如您所指出的那样,它适用于HTML文件)。

如果您真的(真的)需要动态地进行“转换”(如“每次请求页面”时),您可以通过使用一些JavaScript操作DOM来在客户端执行此操作。 (see here)。

如果您只需要进行一次转换,然后将输出文件保留为服务器资源,则可以使用模板预处理。

我不确定你为什么要转换为内联css,也许如果你再解释一下,我们可以指出你正确的方向。

G00d 1uck。

[更新]因此转换应该是动态的。一种方法是(而不是使用包含带有嵌入式回显PHP值的HTML代码的PHP文件)将所有html + PHP'echoed'放入字符串变量中,然后将结果作为流(或作为实际临时文件)注入)转换器,等待输出并通过电子邮件发送。