0

在我的 jsf 页面中,我有一个包含 3 列的 panelGrid。为了给这些列一个特定的 witdh,我使用了这样的 columnClasses 属性

    columnClasses="width20perc,width30perc,width50perc"

然后在我的 default.css 中:

    .width20perc
    {
    width: 40px !important;
    min-width: 15em !important;
    }

通常我会在那里使用 20% 但为了将宽度至少更改为其他值,我使用 40px 代替。但是,即使这样也行不通...我无法以任何方式更改每列的宽度。当我查看表格的源代码时,它说

    <td class=width20perc>

所以 -elements 确实有正确的类,但是当我检查他们的 css 样式时,不会继承我在 default.css 中定义的样式。但是,它们确实继承了以下字体大小样式,该样式也在我的 default.css 中定义,因此我认为样式表已正确加载:

    .ui-widget,
    .ui-widget .ui-widget
    {
    font-size: 90% !important;
    }

我正在使用 primefaces 3.4.2 并将我的 outputstylesheet 加载到我的默认模板中,如下所示:

    <h:head>
        <h:outputStylesheet name="css/default.css" />
          <ui:insert name="head">
             <title>Page title</title>
          </ui:insert>
    </h:head>
4

1 回答 1

1

当覆盖 PrimeFaces 样式时,不要使用丑陋的!importanthack。只需在 PrimeFaces 样式之后加载您的样式。您可以通过<h:outputStylesheet><h:body>.

<h:head>
    ...
</h:head>
<h:body>
    <h:outputStylesheet name="css/default.css" />
    ...
</h:body>

也可以看看:

于 2013-01-31T14:09:40.283 回答