0

私のjsfページには、3列のpanelGridがあります。これらの列に特定の幅を与えるために、このような columnClasses 属性を使用しました

    columnClasses="width20perc,width30perc,width50perc"

次に、私の default.css で:

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

通常は 20% を使用しますが、幅を少なくとも他の値に変更するために、代わりに 40px を使用しました。ただし、これでも機能しません...各列の幅を変更することはできません。テーブルのソースコードを見ると、

    <td class=width20perc>

そのため、要素には適切なクラスがありますが、それらの css スタイルを調べると、 default.css で定義したスタイルを継承しません。ただし、default.css でも定義されている次の font-size スタイルを継承しているため、スタイルシートが適切に読み込まれていると思います。

    .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

!importantPrimeFaces スタイルをオーバーライドするときは、醜いハックを使用しないでください。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 に答える