jsf页面中style和styleClass的区别

difference between style and styleClass in jsf page

我已经开始使用 java 代码库,其中 style 和 styleClass 关键字用于设置 jsf 页面中不同元素的样式。该项目正在使用 jsf 2.2.

'style' 关键字用于应用 html 属性,例如:

<h:panelGroup style="margin-top:60px">
</h:panelGroup>

其中 'styleClass' 关键字用于应用 .css 文件中的 classes/styles,例如:

<h:panelGroup layout="block" styleClass="panel panel-default">    
</h:panelGroup>

所以我的问题是,是否有关于在何处使用哪个关键字的规则,或者在这种情况下这只是一个选择问题?从这个 link 我不明白这两个关键字之间有什么区别。

这两个属性都用于定义组件的样式属性。 styleClass 将 css 类 附加到组件,而 style 属性用于定义将应用于单个元素的内联样式属性。

这个:

<h:panelGroup style="margin-top:60px">
</h:panelGroup>

将生成以下 HTML:

<span style="margin-top: 60px"></span>

请注意,它是一个跨度 HTML 元素,因为 panelGroup 默认呈现一个跨度。

<h:panelGroup layout="block" styleClass="panel panel-default">    
</h:panelGroup>

会生成:

<div class="panel panel-default"></div>

这是基本的 HTML 知识,除了命名(即 stylestyleClass)之外与 JSF 没有太大关系