2017-02-24 28 views
0

我们正在使用CMS(Kentico),它在内部使用ASP.NET webforms RadioButtonList来呈现自定义窗体上的单选按钮。通过CMS,我们仍然可以控制此控件的RepeatDirectionRepeatLayout属性,但是很少。是否有可能使用CSS将RadioButtonList呈现的单选按钮与其标签进行分组?

要求是显示无线电水平所以RepeatDirection水平RepeatLayout实现此。但是,呈现的标记只是<input /><label />元素的交替列表。

当单选按钮列表开始换行时,会出现窄设备宽度问题。 <input /><label />元素单独包装,因此您失去了控件和标签之间的可视化分组。

由于我们不能直接影响标记,因此我们有什么选择来模拟HTML分组?我担心这可能是一个JS-only解决方案,如果可能的话,我想避免这种解决方案。

回答

1

如果您需要自定义HTML标记,您应该考虑使用普通的OPTION元素(或任何可能需要的标记)的普通SELECT元素。

如果您需要一些处理程序或服务器交互,您可以在这些元素上使用runat =“server”属性以及一个id。 ASP将其作为Web控件处理(请参阅System.Web.UI命名空间)。 另一个选择是隐藏标准的ASP控件,并在自定义标记中的选项发生变化时通过Javascript设置隐藏值。这也是一个非常好的解决方案,如果你需要风格一些fency自定义无线电。

+0

嗨。谢谢。但正如问题所述,我无法控制标记,只有CSS。我希望避免JS解决方案。 – getsetcode

+0

嗨。您可以“克隆”原始的Kentico Web部件。如果你这样做,选择“克隆文件”。 之后,您可以根据需要编辑Web部件标记,而无需更改原始Web部件。 我认为如果你不想编辑标记,将很难找到没有使用JS进行DOM操作的解决方案。 –

相关问题