css - 在 Drupal 中围绕现有的 div 添加额外的 div 类/包装 div 类

标签 css class drupal

在我的 Drupal 网站上,我有这样的东西:

<div class="form-item form-type-textfield item-1">
<div class="form-item form-type-textfield item-2">
<div class="form-item form-type-textfield item-3">
<div class="form-item form-type-textfield item-4">
...

有什么办法可以这样弄

<div class="form-item form-type-textfield item-1 added-class">

<div class="wrapped-class">
   <div class="form-item form-type-textfield item-1">
</div>

因此,向元素添加一个类或将其包裹起来。我试过 hook_preprocess,但没有成功。

hook_form_alter 也不是解决方案,因为您必须为每个表单执行此操作...div 类出现在多个页面上,所以我想用一个来捕捉语句代码片段。
有任何想法吗?

最佳答案

我很惊讶 Drupal 没有“外包”这个功能,但是如果你看看 theme_form_element() function您可以看到类是静态设置的。

我想在代码中做你想做的唯一方法是对该函数使用主题覆盖:

function mytheme_form_element($variables) {

}

在该函数中,您需要将 theme_form_element 函数中的全部代码放入(我知道这似乎有点矫枉过正,但我​​想不出更好的方法),并将您的新类添加到$attributes['class'] 数组:

$attributes['class'] = array('form-item', 'my-other-class');

关于css - 在 Drupal 中围绕现有的 div 添加额外的 div 类/包装 div 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8521518/

相关文章:

html - 我的 anchor 标记重定向到我自己的 WordPress 网站/"the link I gave in Tag"

html - 尽管源代码和 CSS 文件相同,但背景图像没有出现在站点副本中?

html - 从 font-awesome v4 到 v5

php - Drupal - 显示 block 内节点的标题

mysql - 在 Drupal 中创建(折线图)图表(使用 mysql 数据源)时要考虑的任何 forena 替代方案?

html - 忽略 header 的内容

javascript - 根据图像大小调整花式框的大小

php - 从 PHP 中的父类访问具有冲突名称的子属性

java - 在不同的方法中访问和使用自定义对象和 ArrayList<Object>

Drupal: View :如何对字段进行分组