Question

J'ai une feuille de style dans mon application Flex, référencée comme suit:

<mx:Style source="/assets/stylesheets/default.css" />

Dans cette feuille de style, j'ai défini dropShadowEnabled sur true globalement:

global {
    fontSize: 11pt;
    dropShadowEnabled: true;
    verticalAlign: "middle";
}

Cela donne une ombre portée à de nombreux composants, y compris tous les TextInputs.

Cependant, j'ai un composant de la fenêtre de titre qui affiche une zone de liste déroulante modifiable et je ne veux pas que cette entrée de texte ait une ombre portée. Je ne peux pas le faire partir cependant. J'ai essayé ce qui suit:

Création d'un sélecteur de classe CSS ...

<mx:ComboBox editable="true" dataProvider="{nameOptions}" textInputStyleName="noDropShadow" />

... dans le CSS par défaut:

.noDropShadow {
    dropShadowEnabled: false;
}

... dans la fenêtre de titre:

<mx:Style>
    .noDropShadow {
        dropShadowEnabled: false;
    }
</mx:Style>

... aussi:

<mx:Style>
    TextInput.noDropShadow {
        dropShadowEnabled: false;
    }
</mx:Style>

Aucun de ceux-ci n'a supprimé l'ombre portée. Qu'est-ce qui me manque ici?

Était-ce utile?

La solution

Une solution serait de supprimer & citation; dropShadow Enabled: true; "e; du style global et ne le mettez que sur les éléments que vous souhaitez spécifiquement utiliser l'ombre portée.

Autres conseils

Attribuez à votre combo un attribut id, puis:

combo_box_id.setStyle (" dropShadowEnabled " ;, false);

Dans votre <mx:Script/> bloc.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top