2013-06-14 4 views
1

Je souhaite créer une zone de texte avec des bordures noires.Comment supprimer l'ombre de la bordure de la zone de texte

TextArea dataPane = new TextArea(); 
dataPane.setStyle("-fx-border-color: black; -fx-border-width: 1; -fx-border-radius: 16;"); 

Mais je reçois ce résultat:

enter image description here

Pouvez-vous me dire comment je peux enlever cette ombre bleue?

+0

inspectons en utilisant le chrome, vous trouverez -webkit ou les valeurs -moz sont réglées, vous devez remplacer les en utilisant ur reset css –

Répondre

5

La bordure bleue n'est pas une ombre mais une couleur de focus par défaut dans le style caspien de JavaFX pour les contrôles. Vous pouvez voir sa définition dans caspian.css comme -fx-focus-color avec la valeur par défaut #0093ff.

Maintenant, nous pouvons remplacer cette palette de couleurs par contrôle. Alors vous faites

dataPane.setStyle("-fx-border-color: black; -fx-border-width: 1; " 
       + "-fx-border-radius: 16; -fx-focus-color: transparent"); 
5

Si vous voulez supprimer complètement toutes les frontières, les ombres, les faits saillants:

.text-area { 
    -fx-background-insets: 0; 
    -fx-background-color: transparent, white, transparent, white; 
} 

.text-area .content { 
    -fx-background-color: transparent, white, transparent, white; 
} 

.text-area:focused .content { 
    -fx-background-color: transparent, white, transparent, white; 
} 

.text-area:focused { 
    -fx-highlight-fill: #7ecfff; 
} 

.text-area .content { 
    -fx-padding: 10px; 
    -fx-text-fill: gray; 
    -fx-highlight-fill: #7ecfff; 
} 
Questions connexes