Как найти динамический Id, или помогите найти с помощью других элементов — webdriver
RobQAA (Rob Qaa)
#1
Проблема (Вопрос) заключается … не могу ввести текст в поле, у него динамический id, а по другим элементам найти не получается, прошу помочь, я так скажем чайник в этом деле )
Я попытался сделать …
driver.find_element_by_xpath(«//input[@type=‘string’]»).send_keys(‘1’)
Код
Valentin_G (Valentin G )
#2
Такой css можно попробовать:label. webix_inp_label>input
#3
Смотрите, у Вас есть шикарнейшие view_id, чьи имена говорят, что это за поле?
Хвала Вашим разработчикам, если эти view_id уникальны.
я бы попробовал вот такой css:
div[view_id=‘spValStr’] input
А вообще по динамическим id я уже рекламировал краткое руководство:
Effective CSS Selectors
и лекцию Алексея Баранцева 10 правил построения хороших локаторов
1 симпатия
aikhao (Aikhao)
#4
Есть вариант //forma//label[text()="Строка"]//following-sibling::input
Тоесть найти элемент и обратиться к следующему элементу по оси
Или же просто обратись по номеру элемента //forma//input[3]
or //forma//input[last()]
sergueik (Сергей Кузьмин)
#5
наверное надо найти по тексту DOM элемент label for ="@id"
его @for
атрибут гарантированно относится к нужному input
который уже будет идентифицироваться однозначно по #id
?
Sheff (Sheff)
#6
#spValStr input
Файл styles.css шаблона сайта при редактировании динамического контента
+7 495 008 8452
Анализ
Проект
Дизайн
Маркетинг
Разработка
Наполнение
Техподдержка
Если у вас возникли какие либо вопросы которые вы не смогли решить по нашим публикациям самостоятельно,
то ждем ваше обращение в нашей службе тех поддержки.
Источник: http://dev.1c-bitrix.ru/community/webdev/user/11948/blog/13129/ |
В данном посте я расскажу о файле styles.
Итак, сначала что это за файл. Если вы о нем в курсе, просто мотайте на вторую часть поста.
Данный файл применяется для изменения отображения в виз.редакторе для облегчения работы редактора сайта. Ну к примеру, у вас есть блок важной информации, который вы используете в контенте, и на сайте он выглядит корректно, но в редакторе ничем не отличается от текста:
Вот чтобы глазу было приятнее, придуман данный файл. В котором, помимо некоторых блоков, может быть указание какой шрифт используется в редакторе, какого он размера, и так далее. То есть, тюнинг чисто под редактор. А уже в шаблоне template_styles.css идут правила CSS исключительно под сайт, и как элементы и текст должны выглядеть на сайте. Именно поэтому неправильно в файле styles.css размещать стили самого шаблона. Кстати, вы можете именовать стили в таком файле (см. курс), это еще больше облегчит работу редактора.
Но возвращаясь к нашим стилям. Если мы добавим в этот файл нужный код, контент в редакторе окрасится уже приятными и нужными цветами:
Вот для чего нужен такой файлик.
А теперь особенность файла
Все озвученное будет работать штатно для статических страниц сайта. Но оно почти наверняка не заработает для динамических элементов. Например, элементов инфоблока. А если заработает, значит вам повезло по описанным ниже причинам.
Причина вот в чем. Дело в том, что при изменении динамических элементов редактору не передается ID шаблона сайта, поэтому он в свою очередь не может подгрузить нужный файл styles.css (о проблеме уже сообщено в Битрикс). Но это не значит, что он не подгружает никакой стиль, он подгружает первый попавшийся. Он берет первый согласно функции opendir. Чтобы узнать, какой шаблон определит редактор в вашем случае, выполнитетакой код. Первый шаблон в списке и будет искомым.
Что дальше?
Вариант 1. Несколько грязно, но просто помещаем нужные нам стили в тот шаблон сайта, который и определился выше.
Вариант 2. Создаем шаблон-пустышку, который нигде не применяется, но будет обязательно выше всех при определении методом выше. Туда добавляем нужные нам стили.
Вариант 3. Ждем исправления проблемы Битриксом.
Оригинал и комментарии здесь, пост в Facebook здесь.
Назад в раздел
Подписаться на новые материалы раздела:
Загрузка…
Веб студия «АКРИТ»
Узнать больше
Рассылка
Услуги
- Внедрение, разработка, техподдержка
- Настройки торговых площадок
- Экспертиза производительности
- Пакет услуг по переходу на новые версии модуля
- Пакеты услуг
- Продление решений
- Сопровождение и поддержка сайтов
Популярные теги
Загрузка
Веб-студия «АКРИТ»
Мастер-класс по динамическому CSS — онлайн-семинары
Семинар, 4×2 часа + вопросы и ответы • Пн и Вт, 29 ноября — 14 декабря 2021 г.
09:00–11:30 по тихоокеанскому времени (США) • 18:00–20 :30 CET (Европа)
Звонок Пользовательские свойства CSS «CSS-переменные» скрывает светодиод. Конечно, их можно использовать как простые переменные, точно так же, как переменные Sass, но использование пользовательских свойств для шрифтов и цветов использует лишь малую часть их мощности.
В полной мере настраиваемые свойства CSS могут облегчить совместную работу и повторное использование кода, повысить удобство сопровождения и открыть возможности, которые ранее требовали больших объемов трудно поддерживаемого Javascript и нарушали разделение задач. Они действительно революция в том, как мы пишем CSS , чей потенциал до сих пор в значительной степени не задействован. Теперь, когда они, наконец, поддерживаются всеми современными браузерами, нет оправдания не погрузиться в них. и способы их обхода, а также многочисленные практические неочевидные варианты использования, где их сила действительно сияет.
Варианты использования, которые мы будем практиковать, охватывают широкий диапазон из современный CSS , от Grid Layout и Flexbox до компоновки и смешивания, так что по пути вы также получите ускоренный курс современного CSS.
400 $ .00 Зарегистрироваться на этот семинар → 4 сеанса по 2 часа в прямом эфире + вопросы и ответы. 29 ноября – 14 декабря.
Со всеми видеозаписями, слайдами. Получить билет.
🎪 Сэкономьте до 25% на этом семинаре с Smashing Membership.
Чему вы научитесь на этом семинаре?
- Как работают пользовательские свойства CSS? Для чего их можно использовать и для чего нельзя? Чем они отличаются от переменных Sass/Less? Можно ли с ними сочетаться?
- На что похожа поддержка браузера? Что делать, если мне по-прежнему нужна поддержка IE11?
- Как настраиваемые свойства могут повысить удобство сопровождения кода?
- Как настраиваемые свойства способствуют лучшему сотрудничеству между командами с разными наборами навыков?
- Реактивный CSS с настраиваемыми свойствами и JS для реального разделения поведения и стиля
- Неверно во время вычисления значения: как настраиваемые свойства изменяют каскад?
- Динамическое обновление пользовательских свойств : как и почему?
- Эмуляция примесей и пользовательских сокращений с пользовательскими свойствами
- Пользовательские свойства для более легкого адаптивного дизайна с меньшим количеством кода
- Инкапсуляция: как использовать пользовательские свойства для создания стилевых крючков?
- Пользовательские свойства и веб-компоненты : совпадение, созданное на небесах
- Как использовать API-интерфейсы Houdini для анимации пользовательских свойств и управления оценкой
- Отладка пользовательских свойств
- Как избежать ошибок
Для кого это?
Это полноценный семинар, состоящий из четырех двухчасовых сессий с большим количеством времени для вопросов и ответов и практических упражнений.
Этот семинар предназначен для всех, кто пишет CSS или JS, взаимодействующие с CSS. Сюда входят дизайнеры интерфейса, разработчики интерфейса и разработчики полного стека. Это будет особенно полезно для тех, кто пишет код, используемый другими разработчиками. Вам потребуется хорошее понимание CSS, а для некоторых частей семинара — базовое понимание JS (в основном события и базовая модель DOM). Вам не нужно уже быть знакомым с пользовательскими свойствами, хотя, если вы хорошо знакомы, вы многому научитесь в мастерской, так как это продвинутый курс, а не введение .
Даже если вы не перестанете любить CSS, вы сможете быстрее и лучше выполнять те части своей работы, которые связаны с CSS.
400 $ .00 Зарегистрироваться на этот семинар → 4 сеанса по 2 часа в прямом эфире + вопросы и ответы. 29 ноября – 14 декабря.
Со всеми видеозаписями, слайдами. Получить билет.
🎪 Сэкономьте до 25% на этом семинаре с Smashing Membership.
Что вам нужно взять с собой?
Вам потребуется ноутбук с современным браузером и учетной записью CodePen (бесплатный уровень).
О Леа Вероу
Леа увлечена улучшением Интернета, целью, над достижением которой она работает уже более десяти лет, под разными углами зрения. Она активно занимается веб-стандартами в качестве избранного члена группы технической архитектуры (TAG) W3C, в качестве приглашенного эксперта рабочей группы CSS, а в прошлом — в качестве сотрудника W3C. В настоящее время она работает в Массачусетском технологическом институте, занимаясь исследованиями на стыке человеко-компьютерного взаимодействия и языков программирования. Она хорошо известна как оратор и автор, написавшая несколько статей, глав в книгах и бестселлер «Секреты CSS для продвинутых пользователей».
Леа также запустила несколько проектов с открытым исходным кодом и веб-приложений, таких как Prism, Mavo и Awesomplete. Некоторые из ее работ с открытым исходным кодом используются на миллионах веб-сайтов. Она пишет в Твиттере @leaverou и ведет блог на lea.verou.me. Она имеет степень магистра компьютерных наук Массачусетского технологического института. Несмотря на свои технические увлечения, Леа — одна из немногих неудачников, одинаково любящих код и дизайн.
Время и расписание
Этот семинар разделен на четыре дня . Наши виртуальные двери открываются в 8:45, мы начинаем в 9утра по тихоокеанскому времени.
Семинары будут проходить в следующие дни:
- Пн, 29 ноября, 09:00 – 11:30 по тихоокеанскому времени
- Вт, 30 ноября, 09:00 – 11:30 по тихоокеанскому времени
One недельный перерыв
- Пн, 13 декабря, 09:00 – 11:30 по тихоокеанскому времени
- Вт, 14 декабря, 09:00 – 11:30 по тихоокеанскому времени
День 1: Основы пользовательских свойств CSS
8:45 PT
Открытие виртуальных дверей, регистрация, общение и знакомство.
9:00 – 11:00
Основы пользовательских свойств CSS: отличия от переменных препроцессора, область действия, наследование, веб-компоненты и тематика, регистрация настраиваемых свойств, запасные варианты, значения по умолчанию, недопустимые значения. Недействительный во время вычисления значения (IAVCT) и недействительный во время синтаксического анализа.
11:00 – 11:30
Вопросы и ответы с Леа по материалам дня. Общайтесь друг с другом.
День 2: Примеры использования и стратегии
8:45 PT
Открыты виртуальные двери, регистрация, чат, что вчера было самым полезным?
9:00 – 11:00
Применение в работе с цветом и адаптивном дизайне, переходах и анимации.
11:00 – 11:30
Вопросы и ответы с Леа по материалам дня. Общайтесь друг с другом.
День 3: максимальное использование настраиваемых свойств CSS
8:45 утра по тихоокеанскому времени
Открытие виртуальных дверей, регистрация, чат, что вчера было самым полезным?
9:00 – 11:00
Синтаксические токены, типы данных и преобразования, условные операторы, сопоставление диапазонов.
11:00 – 11:30
Вопросы и ответы с Леа по материалам дня. Общайтесь друг с другом.
День 4: Пользовательские свойства + JS
8:45 PT
Открытие виртуальных дверей, регистрация, чат, что вчера было самым полезным?
9:00 – 11:00
Как сочетание пользовательских свойств с JS является революцией в разделении задач, совместной работе и повторном использовании кода.
11:00 – 11:30
Вопросы и ответы с Ли по материалам дня. Общайтесь друг с другом.
Основные пользовательские свойства CSS (CSS-переменные)
Содержание
Введение
00:00:00 — 00:03:15
Введение
Леа Веру представляет личный курс предварительные условия, обзор материала, который необходимо охватить, ресурсы курса и необходимые материалы.
00:03:16 — 00:11:28
Обзор переменных CSS
Леа обсуждает синтаксис переменных в Sass and Less, почему переменные определены в :root и что переменные CSS не могут делать по сравнению с допустимым кодом Sass . В этом сегменте также представлен пошаговый обзор типичного примера кода курса и краткое обсуждение лексической и динамической области видимости.
Наследование и отказы
00:11:29 — 00:22:43
Наследование
Леа обсуждает наследование переменных CSS, переопределение переменных с помощью медиа-запросов, холст, текст холста и связь между наследованием и лексической областью действия. В этом сегменте также рассказывается, как отключить наследование переменных, установив для свойства значение initial, и краткая демонстрация @property.
00:22:44 — 00:29:34
Создание хуков стиля
Леа демонстрирует редактирование компонентов веб-сайта, которые позволяют пользователям применять пользовательские свойства. Также предоставляется пошаговое руководство по использованию хуков стилей для быстрого оформления псевдоэлементов при скрытии больших разделов CSS.
00:29:35 — 00:43:34
Резервные варианты
Леа демонстрирует использование резервных вариантов, чтобы избежать переопределения свойств с помощью селектора той же специфичности, кратко демонстрирует использование @property вместо резервного варианта и как чтобы выбрать резервное значение. Что происходит, когда нет поддержки CSS-переменных, использование @supports для обеспечения более сложных резервных стилей и то, как определить @property с помощью JavaScript, также рассматриваются в этом сегменте.
00:43:35 — 00:44:08
Резервные варианты Упражнение
Учащимся предлагается создать отдельные свойства, устанавливающие размер выреза по горизонтали и вертикали, или свойство —corner-size, устанавливающее весь угол для Вырез под 45 градусов.
00:44:09 — 00:47:04
Решение для резервных вариантов
Леа просматривает решение упражнения по резервным вариантам. В этом сегменте также рассматривается краткое обсуждение динамических запасных вариантов и значений по умолчанию.
00:47:05 — 00:58:17
DRY Стратегии отката
Леа демонстрирует демонстрацию пользовательских свойств, позволяющих создавать несколько вариантов компонентов и стратегий отката, включая откат в переменной, псевдочастной свойства и запасные варианты с использованием @property. В этом сегменте также даны ответы на вопросы учащихся о том, что произойдет, если синтаксис свойства определен как цвет, но задан как другая переменная, и целесообразно ли хранить остановки цвета градиентного фона и переменные вместе с направлением градиента.
Практика недопустимых значений и пользовательских свойств
00:58:18 — 01:10:37
Недопустимые значения и вычисляемые значения
CSS
Lea демонстрирует, что происходит, когда недопустимое значение передается в переменную во время вычисления значения (IACVT) обсуждает время синтаксического анализа, вычисляемые значения и используемые значения. Синтаксис зарегистрированных свойств проверяется во время вычисления значения, а не во время синтаксического анализа.
01:10:38 — 01:13:16
@supports и пользовательские свойства
Леа использует @supports, чтобы указать цвета LCH, если браузер поддерживает LCH, и предоставить запасной вариант для браузеров, которые этого не делают. При синтаксическом анализе браузер не имеет значений пользовательских свойств, он не может знать, будут ли после подстановки действительными результирующие значения и не будут использоваться запасные варианты.
01:13:17 — 01:14:59
Пользовательские свойства Упражнение
Учащимся предлагается заполнить отсутствующие элементы CSS, чтобы использовать переменные —p для процентных значений и ввести свойства для дальнейшей настройки диаграммы.
01:15:00 — 01:21:41
Решение для пользовательских свойств
Леа проходит через решение упражнения с пользовательскими свойствами.
01:21:42 — 01:28:24
Циклы и переопределяющие свойства
Леа демонстрирует введение цикла в переменные CSS, обсуждает, как браузеры обрабатывают циклы, комбинируя переменные Sass и CSS, и рассматривает возможное решение чтобы избежать создания циклов. Циклы делают все переменные, участвующие в цикле, недействительными во время вычисления значения.
01:28:25 — 01:34:35
Упражнение с гибкой круговой диаграммой
Леа дает обзор макета упражнения с круговой диаграммой и демонстрирует, как фон с коническим градиентом используется для определить срезы. Затем учащимся предлагается создать многоразовый компонент круговой диаграммы, позволяющий настраивать значения и цвета с помощью переменных —colorN и —valueN с соответствующими значениями по умолчанию, чтобы их не нужно было устанавливать все сразу (если цвет не задано, должно быть hsl(N * 25 80% 50%)), где N — индекс среза).
01:34:36 — 01:41:42
Решение с гибкой круговой диаграммой
Леа просматривает решение упражнения с гибкой круговой диаграммой.
01:41:43 — 01:48:28
Пользовательское свойство с циклом Sass
Оставьте живые коды, реализующие циклы Sass, чтобы сократить повторение кода в примере с круговой диаграммой. В этом сегменте также рассматривается демонстрация использования списков в Sass для создания списка цветовых точек.
Переключатели, адаптивный дизайн и цвета
01:48:29 — 01:56:26
Переключатели пробелов
Леа обсуждает использование переключателей пробелов для включения и выключения частей значения, использование пробелов в качестве запасного варианта и определение псевдонимов для улучшения читаемости кода. Пробел позволяет отключить несколько разных частей настраиваемых свойств одновременно.
01:56:27 — 02:04:44
Адаптивный дизайн с пользовательскими свойствами
Леа демонстрирует использование пользовательских свойств для упрощения адаптивного дизайна с помощью трех различных стратегий. Это уменьшает количество необходимых переопределений, делая код более удобным для сопровождения.
02:04:45 — 02:17:19
Цвета
Леа обсуждает использование пользовательских свойств в отношении цвета, включая создание псевдонимов на основе оттенка, вариации цвета с пользовательскими свойствами и использование функции clip() для обеспечения удобочитаемости результирующая яркость. В этом разделе также рассматривается хранение нескольких цветовых компонентов в одной переменной и сохранение нескольких вариантов в одном и том же компоненте.
02:17:20 — 02:18:19
Цвета Упражнение
Учащимся предлагается изменить CSS так, чтобы более сильные мигрени были более красными, а более легкие — более желтыми. Мигрень без интенсивности следует установить на синий.
02:18:20 — 02:21:43
Решение цветов
Леа решает решение упражнения с цветами.
02:21:44 — 02:23:38
Цвет: настоящее и будущее
Леа представляет краткий обзор раздела цветов на данный момент и обсуждает возможное будущее пользовательских свойств и цветов, включая пользовательские свойства для хранения цвет и функции, которые манипулируют цветами. В этом сегменте также рассматривается краткое обсуждение функции смешения цветов.
02:23:39 — 02:37:09
Переходы и анимация
Леа демонстрирует использование пользовательской функции кубического Безье для добавления к изображению анимации отскока, переменных CSS в @keyframes, анимации градиентов и как размыть при наведении с помощью фонового фильтра. Без использования @property для их регистрации пользовательские свойства могут запускать переходы, но не интерполируются по умолчанию.
Числа, строки и изображения
02:37:10 — 02:47:04
Числа, длины и значения переменных
Леа приводит пример того, что происходит при попытке абстрагировать измерения в переменную, обсуждает, что значения переменных не могут содержать части токенов и что считается токенами. В этом сегменте также представлены допустимые и недопустимые примеры синтаксиса, способы создания примесей с одним свойством и рекомендуемая практика использования значений переменных.
02:47:05 — 02:53:24
Числовые переключатели
Леа демонстрирует переключение между числовыми значениями с помощью переключателей 0/1, которые действуют как логические значения, закодированные в CSS. В этом сегменте демонстрируется использование недавно реализованных числовых переключателей с медиа-запросами для перевода веб-страницы в темный режим.
02:53:25 — 02:56:09
Отображение диапазона
Леа демонстрирует, что та же самая формула, что и ранее обсуждавшееся числовое переключение, работает для целых диапазонов 0–1, поскольку на самом деле это формула линейной интерполяции.
02:56:10 — 02:57:08
Числовой диапазон Упражнение
Учащимся предлагается создать переменную, которая управляет как положением радиального градиента, так и положением тени текста.
02:57:09- 03:01:30
Решение числового диапазона
Леа просматривает решение упражнения с числовым диапазоном, а затем добавляет анимацию ключевых кадров, в которой используется только что созданное пользовательское свойство.
03:01:31 — 03:04:08
Общее линейное отображение диапазона
Леа обсуждает более общую формулу для отображения диапазона, пересматривает журнал мигрени с новой обобщенной формулой и предоставляет Codepen, который вдохновил пример прожектора. Отображение диапазона позволяет одной переменной управлять несколькими вещами.
03:04:09 — 03:14:21
Строки и числа в строках
Леа обсуждает некоторые предостережения относительно строк в отношении пользовательских свойств, как отобразить число с помощью сгенерированного содержимого и как для преобразования чисел в целые числа. Только целые числа могут быть преобразованы в строки с помощью сброса счетчика, что, в свою очередь, позволит принять их содержимым.
03:14:22 — 03:23:07
Изображения
Леа описывает процесс создания настраиваемых свойств для управления отображаемыми изображениями, ограничения и ошибки CSS, а также способы разрешения относительных URL-адресов. Вопросы учащихся о том, могут ли препроцессоры помочь с ошибкой CSS и есть ли способ установить URL-адрес как часть HTML, также рассматриваются в этом сегменте. В настоящее время нет доступного способа объединения строк в URL-адрес в CSS.
JavaScript
03:23:08 — 03:31:48
Javascript
Леа обсуждает, как задавать и читать пользовательские свойства с помощью JavaScript, и приводит примеры настройки свойств для передачи информации о местоположении мыши. В этом сегменте также рассматривается, как получить координаты локального указателя.
03:31:49 — 03:33:29
Упражнение с эффектом пульсации динамической кнопки
Учащимся предлагается использовать предоставленный код в качестве отправной точки для рисования «эффекта пульсации» на кнопке Hello, аналогичного это материальный дизайн.
03:33:30 — 03:42:29
Решение с динамическим эффектом пульсации кнопок
Леа показывает решение упражнения с динамическим эффектом пульсаций кнопок. В этом сегменте также приводится краткое обсуждение производительности.
03:42:30 — 03:45:00
Динамический стиль элементов формы
Lea live кодирует слайдер с динамическим стилем, комбинируя JavaScript и CSS.
03:45:01 — 03:47:31
Эффект ввода заголовка
Леа выполняет эмуляцию набора текста, используя анимацию с двумя ключевыми кадрами, длину динамического содержимого и длину содержимого передаваемого элемента.