Доступ к значению атрибута HTML в SASS

Можно ли получить доступ к значению атрибута 9X_nested-divs HTML в SASS? У меня есть строка кода, в 9X_html-attributes которой говорится:

    , где 3 - это результат 9X_html-head некоторого материала jQuery. Мне нужен 3 для 9X_html-comments расчета CSS. Как я могу сохранить его как 9X_sass переменную SASS?

    В качестве альтернативы, есть 9X_html-attributes ли способ подсчитать количество дочерних 9X_nested-divs элементов определенного родительского элемента? Скажем, у 9X_html-comments меня есть этот код:

    • First list item
    • Second list item
    • Third list item
     

    (Как вы могли догадаться, значение 9X_htmldocument data-count соответствует количеству элементов списка.) Может 9X_div ли SASS подсчитать элементы списка и сохранить 9X_html это число как переменную?

    Мы будем благодарны 9X_html-head за любые идеи.


              
12
0
3
Общее количество ответов: 3

Ответ #1

Ответ на вопрос: Доступ к значению атрибута HTML в SASS

Sass - это просто генератор CSS. На самом 9X_time-tag деле он не взаимодействует с вашим HTML, поэтому 9X_dom вы не можете использовать атрибуты HTML 9X_time-tag в качестве переменных Sass.

Однако CSS может 9X_dom выбирать на основе атрибутов. Так что это 9X_html будет более пространно, чем вам хотелось 9X_webpage бы, но вы можете сделать что-то вроде

ul[data-count="3"]:after content: "There were three items in that list!" 

И я 9X_htmldocument думаю, что если вы хотите ограничиться только 9X_div подмножеством последних браузеров , вы можете 9X_htmldocument использовать функцию CSS calc() вместе с attr(), чтобы 9X_divs использовать атрибут в вычислениях на основе 9X_nested-divs CSS. Но это довольно передовой край.

† Если честно, я понятия не имею, в каких версиях браузеров это реализовано полностью. Я почти уверен, что он есть в Firefox, хотя я не использовал его и понятия не имею о других браузерах. Во всяком случае, он определенно не пользуется хорошей поддержкой.

14
1

  • @SLaks: Я не думаю, что хорошо поддерживается взаимодействие `calc()` и `attr()`. Сам `calc()` появился довольно недавно, но далеко не так экзотичен, как поддержка использ ...

Ответ #2

Ответ на вопрос: Доступ к значению атрибута HTML в SASS

Похоже, вы пытаетесь получить количество 9X_html-dom элементов в своем неупорядоченном списке 9X_html-dom в CSS (может быть, чтобы изменить их размер 9X_div-layouts в соответствии с количеством братьев и сестер?).

Действительно, вы 9X_time-tag не можете использовать атрибут данных в 9X_time-tag качестве переменной Sass. Однако существует чистый способ CSS для применения условных стилей с учетом количества элементов в родительском элементе. Кроме 9X_span того, это очень легко написать на Sass.

Допустим, ваше 9X_htmldocument максимальное количество элементов в вашем 9X_html-attributes списке - 10, и вы хотите вычислить размер 9X_html-dom тегов li на основе количества тегов li в 9X_html-tag вашем списке.

@for $i from 1 through 10 { li:first-child:nth-last-child(#{$i}), li:first-child:nth-last-child(#{$i}) ~ li { width: (100%/$i); } } 

Будет выведен следующий CSS:

li:first-child:nth-last-child(1), li:first-child:nth-last-child(1) ~ li { width: 100%; } li:first-child:nth-last-child(2), li:first-child:nth-last-child(2) ~ li { width: 50%; } li:first-child:nth-last-child(3), li:first-child:nth-last-child(3) ~ li { width: 33.33333%; } li:first-child:nth-last-child(4), li:first-child:nth-last-child(4) ~ li { width: 25%; } li:first-child:nth-last-child(5), li:first-child:nth-last-child(5) ~ li { width: 20%; } li:first-child:nth-last-child(6), li:first-child:nth-last-child(6) ~ li { width: 16.66667%; } li:first-child:nth-last-child(7), li:first-child:nth-last-child(7) ~ li { width: 14.28571%; } li:first-child:nth-last-child(8), li:first-child:nth-last-child(8) ~ li { width: 12.5%; } li:first-child:nth-last-child(9), li:first-child:nth-last-child(9) ~ li { width: 11.11111%; } li:first-child:nth-last-child(10), li:first-child:nth-last-child(10) ~ li { width: 10%; } 

В 9X_html-attributes основном это дает тегам li ширину:

  • 100.0% когда есть только один тег li
  • 50.00% при наличии двух тегов li
  • 33.33% при наличии трех тегов li
  • 25.00% при наличии 4 тегов li
  • 20.00% при наличии 5 тегов li
  • 16.66% при наличии 6 тегов li
  • 14.28% при наличии 7 тегов li
  • 12.50% при наличии 8 тегов li
  • 11.11% при наличии 9 тегов li
  • 10.00% при наличии 10 тегов li

Для живого 9X_nested-divs примера обратитесь к this demo, который я использовал, используя 9X_webpage тот же трюк. Надеюсь, это поможет.

5
0

Ответ #3

Ответ на вопрос: Доступ к значению атрибута HTML в SASS

Если вы хотите получить доступ к атрибуту 9X_div-layouts HTML из CSS, вы можете использовать attr()

Check the doc

1
0