gpt4 book ai didi

css - 在 Zend 中设置主体类

转载 作者:行者123 更新时间:2023-11-28 11:42:24 26 4
gpt4 key购买 nike

我正在开发 Zend 1.12 应用程序并尝试将样式类分配给布局主体标记。

我发现这个示例 Bootstrap.php 文件似乎可以处理该任务: https://gist.github.com/fideloper/1302688

它似乎集成得很好,但是 body 的类总是空白。

有人可以在这里为我指明正确的方向,了解如何将类(class)分配给 body 吗?

谢谢。

最佳答案

对我上面引用的代码片段做了一个小改动。

class AppName_Helper_BodyClass extends Zend_View_Helper_Placeholder_Container_Standalone {

private $_classes = array();

public function __construct($classes = null) {
if(is_array($classes)) {
$this->addClass($classes);
}
}

public function addClass($class) {
if(is_array($class)) {
foreach($class as $k => $c) {
if(is_string($c)) {
if(is_string($k)) {
$this->addClass($k.'-'.$c); //recursion
} else {
$this->addClass($c);
}
} else {
throw new Zend_Exception('Class must be a string - is type: '.gettype($c));
}
}
return $this;
}

if(is_string($class)) {
$this->_classes[] = $class;
return $this;
} else {
throw new Zend_Exception('Class must be a string - is type: '.gettype($class));
}
return $this;
}

public function removeClass($class) {
$key = array_search($class, $this->_classes);
if($key !== false) {
unset($this->_classes[$key]);
}
return $this;
}

public function bodyClass() {
return $this;
}

public function toString() {
return implode(' ', $this->_classes);
}
}

这段代码进入我的布局:

$uri = Zend_Controller_Front::getInstance()->getRequest()->getParams();
$this->bodyClass()->addClass($uri);

结果是这样的(对于模块 - “default”, Controller - “auth”, Action - “signin”):

<body class="controller-auth action-signin module-default"> 

我正在获取当前请求的参数并将它们映射到正文类。希望这可以帮助处理此问题的人。

关于css - 在 Zend 中设置主体类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15958737/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com