Ошибка разбора таблицы стилей для [dir=rtl] при использовании модуля Python cssutils
Я анализирую таблицу стилей CSS с помощью модуля Python cssutils. Парсер выдает ошибку при достижении селектора "[dir = ltr] div.row div.label".
Я хотел бы найти способ изменить CSS, чтобы сделать синтаксический анализатор счастливым и поддерживать ту же функциональность.
Что было бы стандартным способом для этого:
div.row div.label {
float: left;
width: 18%;
text-align: right;
}
div.row div.formw {
width: 80%;
}
[dir=ltr] div.row div.label, [dir=rtl] div.row div.formw {
float: left;
text-align: right;
}
[dir=rtl] div.row div.label, [dir=ltr] div.row div.formw {
float: right;
text-align: left;
}
Примечание: "dir" используется для управления направлением текста для таких языков, как иврит или арабский.
http://www.unics.uni-hannover.de/nhtcapri/bidirectional-text.html
1 ответ
Решение
Это немного медленнее, но
*[dir=ltr] div.row div.label, *[dir=rtl] div.row div.formw {
float: left;
text-align: right;
}
*[dir=rtl] div.row div.label, *[dir=ltr] div.row div.formw {
float: right;
text-align: left;
}
должно сработать. Очевидно изменить * с элементом с этим атрибутом, если это возможно