2015-11-19 21 views
5

Nel mio file pelle (che sta estendendo Skyros), ho definito una regola comepseudo classe di supporto in ADF

.arrow_box:after { 
    /*some css rules */ 
} 
.arrow_box:before { 
    /*some css rules */ 
} 

L'obiettivo principale è quello di creare una freccia sulla parte superiore della scatola, proprio come il uno mostrato a CSSArrowPlease.

La questione

Quando eseguo pagina, le classi pseudo non vengono applicate perché sono sempre cambiato in:

.arrow_box.p_AFAfter, .x1z2.p_AFAfter { 
    /*some css rules */ 
} 
.arrow_box.p_AFBefore, .x1z2.p_AFBefore { 
    /*some css rules */ 
} 

Notate come il : viene convertito in .p_AFAfter e .p_AFBefore. Come potrei evitare questo?

Ho provato anche sfuggire al selettore:

.arrow_box\:after { 
    /*some css rules */ 
} 

Ma che ha ottenuto tradotti in

.arrow_box\.p_AFAfter, .x1z2.p_AFAfter { 
    /*some css rules */ 
} 

Qualsiasi soluzione a questo? La mia versione JDeveloper è 11.1.1.9.0

PS

DISABLE_CONTENT_COMPRESSION non è un'opzione dal momento che non ho il controllo sopra il file web.xml sul server.

risposta

0

È necessario comprendere che il file skin non è in realtà un file css. È un file skin elaborato dal motore skinning. E devi usarlo, quando si affrontano gli stili dei componenti.
Tuttavia, se tutto ciò di cui hai bisogno è solo un css personalizzato, puoi creare un semplice file css e includerlo nella tua pagina. Puoi ancora tenerlo nel progetto skin o crearlo nel tuo progetto web.

Questo file non verrà modificato da skin engine e otterrete tutti i vostri stili così come sono. Ma non sarai in grado di riferire gli stili dei componenti e di fornire esplicitamente nomi di classi css per i componenti nella proprietà styleClass.

0

disattivare la compressione CSS aggiungendo questo al vostro web.xml

<context-param> 
    <description>Set to true to disable compression of CSS class names for 
       skinning keys and have more human readable class 
       names</description> 
    <param-name>org.apache.myfaces.trinidad.DISABLE_CONTENT_COMPRESSION</param-name> 
    <param-value>true</param-value> 
</context-param> 

Questo consentirà di evitare le vostre classi CSS per essere offuscato.

+0

Bene, questo sarà sicuramente di aiuto a livello di localhost. Ma una volta distribuita la mia applicazione sul portale webcenter, fallirà nuovamente dal momento che sul server, la chiave 'DISABLE_CONTENT_COMPRESSION' sarà impostata su' false' – asprin