Emacs - 正确缩进嵌入在html文件中的css代码

Cal*_*laf 10 html css emacs

当我在emacs中缩进以下html文件时,"background-color"行没有正确缩进.是否可以将emacs用于css部分的css-mode?

<!doctype html>
<html lang=en>
    <head>
        <meta charset=utf-8>
        <title>Page</title>
        <style type = "text/css"> 
            h2 {
            background-color: #BBB;
            }
        </style> 
    </head>
    <body>
        <p>
            <h2>Title</h2>
        </p>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

问题问题:2011年5月

编辑问题:2013年12月

编辑:

我的印象是,寻找或开发一种特别是处理css和html的方法是近视的.正确的解决方案是处理由任意两个子集组成的文件的更广泛的解决方案.也许这个问题不值得认真关注,因为这两个子集应该在他们自己的文件中隔离,但是对于快速测试和较小的例子,问题就在于此.欢迎提出工作解决方案的建议.

Aar*_*ler 3

如您所知,最好将 HTML、Javascript、CSS 等分发到它们自己的文件中,但这通常是不可能的,尤其是在使用遗留代码时。在这种情况下,我发现网络模式非常有价值。

与 nXhtml 和其他此类解决方案不同,Web 模式直接处理每种类型代码的字体锁定和缩进,而不是尝试在任何点发生的地方调用正确的主要模式,或者尝试将主要模式分层到另一个之上。这样几乎保证不能可靠地工作。虽然这种方法无疑意味着大量的重复工作,并且意味着您在编辑内联 Javascript 时无法从 Steve Yegge 出色的 js2 模式中受益,但它确实意味着您可以获得可靠的字体锁定和缩进,而无需花费大量时间处理脆弱的欺骗行为;安装并定制网络模式后,您或多或少可以直接进入并开始破解:

来自 web-mode.org 的 Web 模式示例屏幕截图

我在处理 MuMaMo 之类的问题上花费的时间多得我都记不清了,而我从中得到的只是头痛。(并改进了关于避免内联 CSS 和 Javascript 的纪律,但这纯粹是出于自卫。)Web 模式是解决该问题的绝佳解决方案,我毫无保留地推荐它。