将自定义 CSS class 添加到 WFFM 表单部分的图例元素
Add custom CSS class to legend element of WFFM form section
我希望将 CSS class 添加到与 Web Forms for Marketers 表单关联的图例元素。在 Sitecore 的“表单部分”项中,我可以将 <ShowLegend>Yes</ShowLegend>
添加到“参数”字段,这确实会添加带有 class scfSectionLegend
的图例元素。这很好,但我想添加一个隐藏图例文本的自定义 class。我该怎么做?
更新:
我可以通过在现有 CSS class scfSectionLegend
上添加一些 css 来解决这个问题。我添加了这个:
/* ACCESSIBILITY: Legend text should be intact but hidden for screen readers */
clip: rect(1px, 1px, 1px, 1px);
height: 1px;
width: 1px;
overflow: hidden;
position: absolute !important;
假设我们永远不希望 WFFM 图例文本对该项目可见,这工作正常,但这可能会改变。我希望能够在 DOM 中挑出一个特定的事件,其中父 div 有 hideClass
- 像这样:
.hideClass.scfSectionBorderAsFieldSet.scfSectionLegend {
[CSS properties here]
}
这样内容作者可以控制是否隐藏图例。不幸的是,在 运行 之后,CSS 不起作用;它不会隐藏图例文本。想法?我的 CSS 知识不是那么丰富。
节项中有参数字段。
您可以修改它的值并设置:
<CssClass>hideClass</CssClass><ShowLegend>Yes</ShowLegend>
@Anton 的回答非常接近,但我建议您以不同的方式应用 CSS。
添加参数以匹配您的 CSS 风格:<CssClass>hideLegend</CssClass>
CSS Class 将应用于父字段集,标记应类似于:
<fieldset class="hideLegend">
<legend>Custom Fields</legend>
...
</div>
</fieldset>
然后仅当父字段集具有所需的 class:
时才创建样式以针对图例
fieldset.hideLegend legend {
/* your custom CSS here */
left: -9999px;
position: relative;
}
根据 WFFM 的版本,您可能会在 select 部分看到以下字段选项:
如果是这样,您可以通过在模板类型 /sitecore/templates/Web Forms for Marketers/Meta Data/Extended List Item
下的 /sitecore/system/Modules/Web Forms for Marketers/Settings/Meta data/Css Classes
下创建项目,将自定义 CSS class 添加到下拉列表。将项目名称设置为对您的编辑者友好的名称,并将 Value
字段设置为与 CSS Class 名称匹配(例如上面的示例)。
以上是在 Sitecore 8.1 Update 3 和 WFFM 8.1 160523 上检查的,不同版本的标记和屏幕可能会有所不同。
我希望将 CSS class 添加到与 Web Forms for Marketers 表单关联的图例元素。在 Sitecore 的“表单部分”项中,我可以将 <ShowLegend>Yes</ShowLegend>
添加到“参数”字段,这确实会添加带有 class scfSectionLegend
的图例元素。这很好,但我想添加一个隐藏图例文本的自定义 class。我该怎么做?
更新:
我可以通过在现有 CSS class scfSectionLegend
上添加一些 css 来解决这个问题。我添加了这个:
/* ACCESSIBILITY: Legend text should be intact but hidden for screen readers */
clip: rect(1px, 1px, 1px, 1px);
height: 1px;
width: 1px;
overflow: hidden;
position: absolute !important;
假设我们永远不希望 WFFM 图例文本对该项目可见,这工作正常,但这可能会改变。我希望能够在 DOM 中挑出一个特定的事件,其中父 div 有 hideClass
- 像这样:
.hideClass.scfSectionBorderAsFieldSet.scfSectionLegend {
[CSS properties here]
}
这样内容作者可以控制是否隐藏图例。不幸的是,在 运行 之后,CSS 不起作用;它不会隐藏图例文本。想法?我的 CSS 知识不是那么丰富。
节项中有参数字段。 您可以修改它的值并设置:
<CssClass>hideClass</CssClass><ShowLegend>Yes</ShowLegend>
@Anton 的回答非常接近,但我建议您以不同的方式应用 CSS。
添加参数以匹配您的 CSS 风格:<CssClass>hideLegend</CssClass>
CSS Class 将应用于父字段集,标记应类似于:
<fieldset class="hideLegend">
<legend>Custom Fields</legend>
...
</div>
</fieldset>
然后仅当父字段集具有所需的 class:
时才创建样式以针对图例fieldset.hideLegend legend {
/* your custom CSS here */
left: -9999px;
position: relative;
}
根据 WFFM 的版本,您可能会在 select 部分看到以下字段选项:
如果是这样,您可以通过在模板类型 /sitecore/templates/Web Forms for Marketers/Meta Data/Extended List Item
下的 /sitecore/system/Modules/Web Forms for Marketers/Settings/Meta data/Css Classes
下创建项目,将自定义 CSS class 添加到下拉列表。将项目名称设置为对您的编辑者友好的名称,并将 Value
字段设置为与 CSS Class 名称匹配(例如上面的示例)。
以上是在 Sitecore 8.1 Update 3 和 WFFM 8.1 160523 上检查的,不同版本的标记和屏幕可能会有所不同。