Содержание

Как найти динамический 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

Sergey_Rybakin (Sergey Rybakin)

#3

Смотрите, у Вас есть шикарнейшие view_id, чьи имена говорят, что это за поле?
Хвала Вашим разработчикам, если эти view_id уникальны.
я бы попробовал вот такой css:
div[view_id=‘spValStr’] input

А вообще по динамическим id я уже рекламировал краткое руководство:
Effective CSS Selectors
и лекцию Алексея Баранцева 10 правил построения хороших локаторов

1 симпатия

aikhao (Aikhao)

05.Июнь.2019 13:21:47

#4

Есть вариант //forma//label[text()="Строка"]//following-sibling::input Тоесть найти элемент и обратиться к следующему элементу по оси
Или же просто обратись по номеру элемента //forma//input[3] or //forma//input[last()]

sergueik (Сергей Кузьмин)

Июнь.2019 15:03:40

#5

наверное надо найти по тексту DOM элемент label for ="@id" его @for атрибут гарантированно относится к нужному input который уже будет идентифицироваться однозначно по #id?

Sheff (Sheff)

#6

#spValStr input

Файл styles.css шаблона сайта при редактировании динамического контента

 [email protected]

+7 495 008 8452

Анализ


Проект


Дизайн


Маркетинг


Разработка


Наполнение


Техподдержка


    Веб-студия АКРИТ. разработка модулей и сайтов интернет магазинов на 1С Битрикс
  • Кладовка программиста
  • База знаний
  • Файл styles.css шаблона сайта при редактировании динамического контента

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

Источник: http://dev.1c-bitrix.ru/community/webdev/user/11948/blog/13129/

В данном посте я расскажу о файле styles.

css, который вы можете наблюдать в шаблоне сайта, но, самое главное, об его особенности при редактировании динамического контента.

Итак, сначала что это за файл. Если вы о нем в курсе, просто мотайте на вторую часть поста.

Данный файл применяется для изменения отображения в виз.редакторе для облегчения работы редактора сайта. Ну к примеру, у вас есть блок важной информации, который вы используете в контенте, и на сайте он выглядит корректно, но в редакторе ничем не отличается от текста:

Вот чтобы глазу было приятнее, придуман данный файл. В котором, помимо некоторых блоков, может быть указание какой шрифт используется в редакторе, какого он размера, и так далее. То есть, тюнинг чисто под редактор. А уже в шаблоне 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

    Эффект ввода заголовка

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