我正在浏览一些我继承的PHP代码。我可以看到CSS样式和HTML已经合并到相同的php文件中。毋庸置疑,它对我来说看起来像狗粮,我认为这是非常错误的,但也许我在这里错过了一些东西......
答案 0 :(得分:1)
为什么内联CSS或JS不好?
示例强>:
<div style="width: 800px; margin: 1em auto; font: bold 1em/1.2 Verdana, Arial, Helvetica, sans-serif">
<div style="float: left; width: 400px; padding: 1em 2em; font-size: 0.9em">
<span id="get-shit" onclick="callSomeFunction()">News</span>
</div>
</div>
HTML文件大小
你的HTML代码会更加重要,即一个充满类似代码的网页的kb大小会比必要的大很多。
缺乏缓存
HTML代码永远不会被缓存。与此相反,访问者的Web浏览器在首次访问后将缓存外部依赖项(如CSS和JavaScript文件) - 这意味着访问者访问的网站中的每个页面都不会加载大量多余的HTML代码,它将从Web浏览器缓存中快速检索所有样式和交互。
可访问性差
当涉及到内联JavaScript代码时,例如在上面的示例中,它应用于没有任何内置回退交互处理程序的元素(即,像链接将您带到其href中指定的URL属性等)。这意味着当JavaScript由于某种原因不可用时,它将无法工作。
代码维护困难
当谈到对代码进行更改时,我确信每个Web开发人员都同意在一个集中位置拥有代码比在整个文件中更改完全相同类型的代码片段要好得多。在网站上。对整个网站维护上述类似的代码将会很糟糕。
答案 1 :(得分:0)
如果你生成部分css或html代码,这是有意义的。无论如何,在这种情况下,我建议使用仅输出变量的模板文件。
将所有代码放在一个文件中可能会减少包含的数量,但会增加需要包含的一个文件的大小。 我建议首先关注开发正在运行的Web应用程序,然后再修复性能瓶颈。有一些工具,比如数据库查询结果的apc_cache或rarley更改html输出的file_caches。
正如你已经意识到的那样,混合了php&amp;具有功能的html / css代码更难以阅读。
表明我的答案是正确的一个事实是,每个现代框架都使用模板文件。例如,ZendFramework CakePHP或Codeigniter。