Отмените объявление CSS

Ключи используются в качестве идентификатора для виджетов, элементов и семантических узлов. Вам не нужно использовать ключи большую часть времени, фреймворк обрабатывает его для вас и использует их внутренне для различения виджетов. Подробнее о них см .: https://flutter.dev/docs/development/ui/widgets-intro#keys

Что касается ключевого слова Super : [ 112]

Мы видим, что в вашем примере виджет CardTitle расширяет statelesswidget суперкласса, и в его конструкторе ":" запускает "список инициализаторов", список выражений, разделенных запятыми, которые выполняются перед конструкторами суперклассов и, следовательно, также перед телом конструкторов.

В приведенном выше примере ключевой параметр, передаваемый конструктору, пересылается ключу именованного параметра безымянного конструктора суперкласса.

16
задан nickf 10 November 2008 в 07:50
поделиться

7 ответов

С одним только CSS Вы не можете обратиться к родителю родителя.

вещь, которую можно сделать, попробовать соединение определенных селекторов CSS и разметки так, чтобы желаемый эффект появился.

<td>
  This is the enclosing element.
  <ul>
    <li>This is the first level UL, direct child of TD
      <ul>
        <li>This is the second level UL</li>
        <li>Same as outside the UL</li>
      </ul>
    </li>
  </ul>
</td>

CSS:

td > ul
  color: blue; /* this affects the "direct child" UL only */
}

Вы ограничили бы глубину наследования стиля к одному уровню, следовательно, внутренняя УЛ. не стилизована в отношении цвета и получает свои настройки из текста включения.

Read больше на Дочерний Селектор CSS , и знать, что более старые браузеры могут иметь свои причуды с ними.

<час>

РЕДАКТИРОВАНИЕ

Для Internet Explorer 6, дочерний селектор может фальсифицироваться некоторым, расширяются. Обязательно закрепите ремни безопасности (условное выражение комментирует и т.п.) перед использованием этого:

td ul {
  color: expression(/TD/.test(this.parentNode.tagName)? "blue" : "black");
}

Это принимает "черный" как внешний цвет. Если это значение цвета подвержено изменениям, Ваш не повезли, я боюсь. Если Вы не можете определить expression(), который может получить значение цвета от контекста (например, проверяющий некоторые другие свойства родительских элементов). Или Вы сдаетесь и используете платформу JS, как кто-то еще уже предположил.

wimpy решение, не имея необходимость использовать JS, конечно, было бы:

td ul.first {
  color: blue;
}

, Но я вижу, почему Вы хотите избежать этого.

8
ответ дан 30 November 2019 в 22:31
поделиться

Используйте это, чтобы удостовериться, что наследовать переопределения вообще, возможно, выбирали цвет:

blockquote em {
    color: inherit !important;
}
7
ответ дан 30 November 2019 в 22:31
поделиться

Сдайтесь и используйте отрывок JavaScript, чтобы обнаружить стиль родителя и установить его? :)

2
ответ дан 30 November 2019 в 22:31
поделиться

Если можно изменить HTML, Вы могли бы попробовать

<li><span>This text should be BLUE</span>
    <ul>
        <li>Same as outside the UL</li>
        <li>Same as outside the UL</li>
    </ul>
</li>

и стиль

li span{
    color: blue;
}

РЕДАКТИРОВАНИЕ другой способ выполнить это без дополнительного тега span:

, Если мы предполагаем, что у нас есть класс стиля (или любой другой селектор), который определяет к родителю внешней ул. Мы можем изменить CSS как это:

.parentStyle,
.parentStyle li li{
     color:red;
}
li{
     color:blue;
}
0
ответ дан 30 November 2019 в 22:31
поделиться

Вместо того, чтобы пытаться вынудить селектор наследовать цвет шрифта от своего прародителя, я предложил бы, чтобы Вы дали селектору и его прародителю общее объявление для цвета шрифта.

Взятие примера блока цитирования, предполагая, что тело является прародителем:

body, blockquote em {
       color:[whatever];
}


blockquote {
       color:red;
}

И в случае незаказанных списков, это было бы:

body, ul ul {
       color:[whatever];
}


ul {
       color:blue;
}
1
ответ дан 30 November 2019 в 22:31
поделиться

Мой CSS немного ржав, но это должно работать:

blockquote {
    color: red;
}

blockquote em {
    color: inherit;
}

Вы устанавливаете блоки цитирования на красный, но весь <em>'s, которые содержатся в блоке цитирования, должен наследоваться... хм, они должны наследоваться сопроводительному тексту, или блоку цитирования?

, Если вышеупомянутое не работает, как Вы хотите, затем нет никакого способа сделать это с текущей разметкой, я думаю. Необходимо было бы работать с дополнительной разметкой или выбрать цвет explicitltly, например,

blockquote em {
        color: Purple;
} 
0
ответ дан 30 November 2019 в 22:31
поделиться

Хорошо, дополнительный текст с примером разъясняет вопрос много. И я боюсь, что то, что Вы хотите, не возможно.

, Если Вы знаете "неизвестный цвет", можно, конечно, повторить цвет. Но я думаю, что для CSS нужен некоторый механизм для добавления переменных или ссылок.

, Таким образом, необходимо придерживаться громоздкого:

ul {
  color: blue;
}
li ul {
  color: sameenvironment;  /* Sorry but you have to add the specific colour here */
}
0
ответ дан 30 November 2019 в 22:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: