我有一个非常大的网站可供使用,其中很多子页面都有内嵌的独特CSS样式。


每个页面的结构都使用不同的 .phtml
部分来创建一个html页面 - 特定部分使用的样式是从 .phtml
文件中调用,得到如下页面:
<!DOCTYPE html>
 < HTML>
< HEAD>
 ...
< /头>
<身体GT;

 < DIV>
 ...
 < / DIV>

 < div class =“someStyle”>
 ...
 < / DIV>

 < style type =“text / css”>
 .someStyle {
颜色:红色;
 }
 .someOtherStyle {
背景:蓝色;
 }
 < /风格>

 < div class =“someOtherStyle”>
 ...
 < / DIV>


< / BODY>
< / HTML>
 代码>

&#XA ; 是否有一种不错的方法可以将此< style>
标记(甚至作为字符串)附加到页面的< head>
标记中,尽管写在页? (作为一个函数可能吗?)
以下Zend文档:
 https://framework.zend.com/manual/2.3/en/modules/zend.view.helpers.head-style。 html


似乎有一个链接 .css
文件的解决方案,而不是短< style>
标签。
< head>
标记。 < style>
标签。通缉结果: https://jsfiddle.net/k0c8cssj/ < / a>
&#xA;&#xA;(我无法在此处粘贴某些内容无法正常使用代码标记。)
&#xA;&#xA;编辑:好吧它是:
&#xA;&#xA; &lt;!DOCTYPE html&gt;&#xA;&lt; html&gt;&#xA;&lt; head&gt; &#XA; &lt; style type =“text / css”&gt;&#xA; .someStyle {color:red; }&#XA; .someOtherStyle {background:blue;}&#xA; &LT; /风格&GT;&#XA;&LT; /头&GT;&#XA;&LT;身体GT;&#XA;&#XA; &LT; DIV&GT;&#XA; ...&#XA; &LT; / DIV&GT;&#XA;&#XA; &lt; div class =“someStyle”&gt;&#xA; ...&#XA; &LT; / DIV&GT;&#XA;&#XA; 〜在.phtml视图文件中 - CSS函数/字符串/命令在那里&#xA;&#xA; &lt; div class =“someOtherStyle”&gt;&#xA; ...&#XA; &LT; / DIV&GT;&#XA;&#XA;&#XA;&LT; / BODY&GT;&#XA;&LT; / HTML&GT;&#XA; 代码>
&#XA;&#XA ; 使用类似的东西:
&#xA;&#xA; $ styles ='。testingClass {color:red;}';&#xA; $ this-&gt; view-&gt; headStyle() - &gt; appendStyle($ styles);&#xA;
&#xA;&#xA; 仅在控制器内工作而不是从一个角度来看。
&#XA;答案 0 :(得分:0)
您仍然可以在部分中使用headStyle viewhelper:
<?php $this->headStyle()->captureStart() ?>
.someStyle{
color:red;
}
.someOtherStyle{
background: blue;
}
<?php $this->headStyle()->captureEnd() ?>
https://docs.zendframework.com/zend-view/helpers/head-style/#capturing-style-declarations
将<?= $this->headStyle() ?>
添加到您的布局标题中。
我建议使用.css文件减少重复代码,您可以将.css文件附加或添加到部分内容中:
// place at a particular offset:
$this->headStyle()->offsetSetStyle(100, $this->basePath('css/style.css'));
// place at end:
$this->headStyle()->appendStyle('//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css');
// place at beginning:
$this->headStyle()->prependStyle($this->basePath('css/style.css'));
同样来自文档。