【问题标题】:Make all CSS inline - Class Issue使所有 CSS 内联 - 类问题
【发布时间】:2011-10-26 19:48:19
【问题描述】:

我发现这个awesome class 将 CSS 样式块转换为内联。但是,我认为它有问题。例如,如果您有以下情况:

<style type="text/css">
.myclass{
padding:0px;
}
<style>

<p class="myclass" style="padding-top: 40px;">Test</p>

它将上面的转换为:

<p class="myclass" style="padding-top: 40px; padding:0px;">Test</p>

但上面的说法不正确。它应该放在前面,因为 padding-top 内联具有优先级,因为它已经是内联的。所以应该是:

<p class="myclass" style="padding:0px; padding-top: 40px;">Test</p>

但我正在努力在课堂上的何处进行此编辑。我认为这很简单,我可以将其提交给课程创建者,但我很挣扎。

有什么想法吗?

【问题讨论】:

  • 为什么会有人想要内联样式???
  • @Gordon 用于时事通讯或就地内容编辑等。
  • @Gordon - 许多电子邮件客户端,忽略包括 Gmail 在内的样式块。
  • 很公平,但这就是我能想到的唯一两件事,至少时事通讯是由于该领域的标准低下所致。可能想补充一点,它是用于时事通讯的。
  • 如果这是关于电子邮件..那么我建议你试试这个:premailer.dialect.ca

标签: php html css inline


【解决方案1】:

最好的解决方案是create an issue 并与开发人员取得联系。所以他也可以为其他人修复它。这是社区的成长。

快速浏览代码,我认为before building the chunks 反转数组 $properties

$properties = array_reverse ( $properties, true );
// build chunks
foreach($properties as $key => $values)

$properties = array_reverse ( $properties, true ) 将第 318 行的构建块顶部的键保留为链接将全部反转。

希望对您有所帮助! 不确定这是否会带来任何其他问题,请尝试。

【讨论】:

  • 看起来它适用于您的更改!哇,太棒了!打算再测试一下。
  • 是的,它对我有用!我发现这门课的另一个问题,但我会尝试自己解决它,如果我不能,我会打开另一个问题。谢谢哈里! :)
  • 只是为了让大家知道。该课程已由所有者更新,可在此处找到:github.com/tijsverkoyen/CssToInlineStyles
【解决方案2】:

在我看来

<p class="myclass" style="padding-top: 40px; padding:0px;">Test</p>

没有错。因为内联样式会覆盖类样式

【讨论】:

  • 以上将等同于 p 标签具有 0px 的填充 - 事实并非如此。它应该有一个 40px 的 padding-top。
  • 我的意思是:如果你将一个类添加到一个已经有内联样式的 p-tag 中。 inlinestyle 仍然会覆盖该类。行为正常。
【解决方案3】:

应该在最新版本中修复:见https://github.com/tijsverkoyen/CssToInlineStyles

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-02
    • 2015-01-27
    • 2020-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多