私は自分のCSSクラスを定義しました:
.my-ui-table td {
border-width: 1px;
border: 0;
padding: 5px 10px;
border-style: hidden;
border-color: inherit;
}
デフォルトのPrimeFacescssは、適用される独自のクラスを定義します。
.ui-panelgrid td {
border-width: 1px;
border-style: solid;
border-color: inherit;
padding: 4px 10px;
}
両方のクラスがテーブルに適用されています:
<table class="ui-panelgrid ui-widget my-ui-table" role="grid">...</table>
Chromeが上記のテーブルをレンダリングすると、ui-panelgridクラスのborder-styleがmy-ui-tableクラスで定義されたborder-styleよりも優先されます。私はCSSの特異性について読んでいますが、特異性のように見える方法は両方のクラス定義で同じであるため、class=""属性で最後に指定されたものが優先されます。なぜこれが起こらないのですか?
編集:HTMLヘッドタグ:
<head>
<link type="text/css" rel="stylesheet" href="/webapp/do/javax.faces.resource/my.css?ln=css">
<link type="text/css" rel="stylesheet" href="/webapp/do/javax.faces.resource/primefaces.css?ln=primefaces">
</head>
。