J'ai créé une liste de paramètres pour une application donnée. Le conteneur pour tous les paramètres est un élément flexible et le sens flexible est réglé sur la colonne. Maintenant, j'ai créé un div avec la classe .Option et mettre un H2 et un
4 Réponses :
Votre règle https://developer.mozilla.org/en-us / Docs / Web / CSS / Spécifie P>
Spécificité est le moyen par lequel les navigateurs décident quelles valeurs de propriété CSS sont les plus pertinentes pour un élément et, par conséquent, seront appliquées. La spécificité est basée sur les règles correspondantes composées de différentes sortes de sélecteurs CSS. P>
Spécificité est un poids appliqué à une déclaration CSS donnée, déterminée par le numéro de chaque type de sélecteur dans le sélecteur correspondant. Lorsque plusieurs déclarations ont une spécificité égale, la dernière déclaration trouvée dans le CSS est appliquée à l'élément. La spécificité ne s'applique que lorsque le même élément est ciblé par plusieurs déclarations. Selon les règles du CSS, des éléments ciblés directement présenteront toujours la priorité sur les règles qu'un élément hérite de son ancêtre. P>
blockQuote> p> .Option code> est écrasée par
#seettingsoverlay div code>, transformez-le en
#settingsoverlay> div code> ou augmentez la spécification CSS de
.Option code> à l'aide de l'ID parent
#Settingsoverlay .Option code>
<div id='SettingsOverlay'>
<div>
<h1>Settings</h1>
<div id='Options'>
<div class='option'>
<h2>Timezone</h2>
<select>
<option value="GMT-12">GMT-12</option>
<option value="GMT-11">GMT-11</option>
<option value="GMT-10">GMT-10</option>
<option value="GMT-9">GMT-9</option>
<option value="GMT-8">GMT-8</option>
<option value="GMT-7">GMT-7</option>
<option value="GMT-6">GMT-6</option>
<option value="GMT-5">GMT-5</option>
<option value="GMT-4">GMT-4</option>
<option value="GMT-3">GMT-3</option>
<option value="GMT-2">GMT-2</option>
<option value="GMT-1">GMT-1</option>
<option value="GMT">GMT</option>
<option value="GMT+1">GMT+1</option>
<option value="GMT+2">GMT+2</option>
<option value="GMT+3">GMT+3</option>
<option value="GMT+4">GMT+4</option>
<option value="GMT+5">GMT+5</option>
<option value="GMT+6">GMT+6</option>
<option value="GMT+7">GMT+7</option>
<option value="GMT+8">GMT+8</option>
<option value="GMT+9">GMT+9</option>
<option value="GMT+10">GMT+10</option>
<option value="GMT+11">GMT+11</option>
<option value="GMT+12">GMT+12</option>
</select>
</div>
</div>
</div>
</div>
La raison de la question est due à la priorité des sélecteurs CSS. Les identifiants prennent la priorité la plus élevée, suivis de classes, d'attributs et de pseudo-classes, puis des éléments et des pseudo-éléments.
Votre Pour résoudre ce problème, vous pouvez ajouter une classe à la DIV (qui réduira sa priorité) et l'utilisera comme un sélecteur CSS à la place de Si vous ne savez jamais quelle priorité votre CSS prend, vous pouvez utiliser Calculateur de spécificité de Keegan pour vérifier. p> p> #Settingsoverlay div code> sélecteur CSS a une priorité plus élevée que la fois que le
# Options CODE> Sélecteur et le sélecteur CODE> .OPTION CODE> - Et parce qu'il a un impact sur tous les éléments
div code> dans l'ID code> code> de
Paraméingoverlay , il met un
flex-direction code> de la colonne
code> sur chaque div. p>
#settingsoverlay div code> comme l'exemple ci-dessous . P>
<div id='SettingsOverlay'>
<div class="settingsOverlay">
<h1>Settings</h1>
<div id='Options'>
<div class='option'>
<h2>Timezone</h2>
<select>
<option value="GMT-12">GMT-12</option>
<option value="GMT-11">GMT-11</option>
<option value="GMT-10">GMT-10</option>
<option value="GMT-9">GMT-9</option>
<option value="GMT-8">GMT-8</option>
<option value="GMT-7">GMT-7</option>
<option value="GMT-6">GMT-6</option>
<option value="GMT-5">GMT-5</option>
<option value="GMT-4">GMT-4</option>
<option value="GMT-3">GMT-3</option>
<option value="GMT-2">GMT-2</option>
<option value="GMT-1">GMT-1</option>
<option value="GMT">GMT</option>
<option value="GMT+1">GMT+1</option>
<option value="GMT+2">GMT+2</option>
<option value="GMT+3">GMT+3</option>
<option value="GMT+4">GMT+4</option>
<option value="GMT+5">GMT+5</option>
<option value="GMT+6">GMT+6</option>
<option value="GMT+7">GMT+7</option>
<option value="GMT+8">GMT+8</option>
<option value="GMT+9">GMT+9</option>
<option value="GMT+10">GMT+10</option>
<option value="GMT+11">GMT+11</option>
<option value="GMT+12">GMT+12</option>
</select>
</div>
</div>
</div>
</div>
Vous pouvez essayer de changer voir https://developer.mozilla.org/en- US / DOCS / Web / CSS / Spécificité Pour plus d'informations sur la SPCIMICITY. P> #SettingingSoverlay div code> a une spécificité de (1, 0, 1) et
.OPTION code> a une spécificité de
(0, 1, 0) code> ce qui signifie que le
flex-direction code> dans
#Settingsoverlay div code> prend la priorité. P>
#settingingsoverlay div code> à
#settingsoverlay> div code>, de sorte qu'il ne sera appliqué que sur ses enfants directs (plutôt que tout ce qui y est). Une meilleure pratique pour éviter les identifiants est à cause de leur forte spécificité. P>
Votre problème est dû au Si vous changez le nom de cette règle, il ne devrait pas être indiqué comme prévu. .
De plus, j'ajouterai quelques paramètres au p> #settingingsoverlay div code> qui indéterminé comportement indésirable sur tous les DIV descendant de la principale #Settingsoverlay.
.Option code> div. p>
<div id='SettingsOverlay'>
<div>
<h1>Settings</h1>
<div id='Options'>
<div class="option">
<h2>Timezone</h2>
<select>
<option value="GMT-12">GMT-12</option>
<option value="GMT-11">GMT-11</option>
<option value="GMT-10">GMT-10</option>
<option value="GMT-9">GMT-9</option>
<option value="GMT-8">GMT-8</option>
<option value="GMT-7">GMT-7</option>
<option value="GMT-6">GMT-6</option>
<option value="GMT-5">GMT-5</option>
<option value="GMT-4">GMT-4</option>
<option value="GMT-3">GMT-3</option>
<option value="GMT-2">GMT-2</option>
<option value="GMT-1">GMT-1</option>
<option value="GMT">GMT</option>
<option value="GMT+1">GMT+1</option>
<option value="GMT+2">GMT+2</option>
<option value="GMT+3">GMT+3</option>
<option value="GMT+4">GMT+4</option>
<option value="GMT+5">GMT+5</option>
<option value="GMT+6">GMT+6</option>
<option value="GMT+7">GMT+7</option>
<option value="GMT+8">GMT+8</option>
<option value="GMT+9">GMT+9</option>
<option value="GMT+10">GMT+10</option>
<option value="GMT+11">GMT+11</option>
<option value="GMT+12">GMT+12</option>
</select>
</div>
</div>
</div>
</div>
Réglage de l'affichage sur Aucun pour votre élément ultime semble vaincre le but de poster un exemple
Oh merde! C'était pour quand vous avez cliqué sur un bouton, il apparaît sur le site Web, j'ai oublié de supprimer cela, désolé
Désolé, mais je ne savais pas que le problème était la spécificité, c'est pourquoi je n'ai pas trouvé les réponses que vous avez fournies.