javascript — В JS происходит изменение свойства display на block, а нужно flex. Команда есть, а js её не выполняет
Вопрос задан
Изменён 1 год 9 месяцев назад
Просмотрен 345 раз
Пытаюсь сделать переход между блоками путём скрытия и показа их пользователю. Есть блок «приветствия», на которой ссылки. По нажатии на ссылку скрывается этот блок и появляется блок с необходимым контентом, но при это в атрибуте, нужного блока, style свойство display заменяется с none на block, хотя в js прописано document.getElementById('mem1').style.display = 'flex';
Код обработки:
<div> <form> Игра "Найди пересонажа" схожа с всемиизвестной игрой "Найди пару". Вы должны совместить элемент и персонажа, который этим элементом владеет. <br> <a href="javascript: void(0)">Первый</a> <a href="javascript: void(0)">Второй</a> </form> </div> <div> random text with example </div>
В css у блока с id «mem1» у display стоит «flex». При обработке нажатия, по итогу, вместо «flex» в инспекторе отображается «block».
- javascript
- html
- css
10
На первом скрине mem1, имевший display none стал block и в консоли тоже
.mem1{ width: 650px; height: 650px; margin: auto; display: flex; flex-flow: row wrap; perspective: 1000px; }
Код выше — свойства, описанные в css файле
Зарегистрируйтесь или войдите
Регистрация через Google
Регистрация через Facebook
Регистрация через почту
Отправить без регистрации
Почта
Необходима, но никому не показывается
Отправить без регистрации
Почта
Необходима, но никому не показывается
Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки
Не виден элемент — webdriver
brutusimpuls
#1
Проблема такая, не видны элементы (подпункты меню) соответственно не могу кликнуть на нужный элемент.
Изначально элемент скрыт
<div> <div> <a href="/ru/sale/women">Для женщин</a> <a href="/ru/sale/men">Для мужчин</a> </div> </div>
Далее, я средствами вебдрайвера кликаю на пункт меню, в котором находятся эти подпункты и они отображаются.
<div> <div> <a href="/ru/sale/women">Для женщин</a> <a href="/ru/sale/men">Для мужчин</a> </div> </div>
Далее я попытался найти элемент следующим образом:
sale=WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.ID,"mm_s_w"))) sale.click()
К сожалению элемент для вебдрайвера остается не видимым.
Ошибка: TimeoutException
madvlaydin (Vladislav Abramov)
#2
Так может он и не видим, а что-то прозрачное сверху нарисовано
попробуйте кликнуть на элемент, селениум должен упасть с ошибкой, что другой элемент ответил на нажатие, и вот этот элемент как раз сверху нарисован
brutusimpuls
#3
В случае, если делаю следующим образом:
sale = driver.find_element_by_id("mm_s_w")
появляется ошибка:
selenium.common.exceptions.ElementNotVisibleException: Message: element not interactable
brutusimpuls
#4
в случае клика мышкой по этому элементу:
Message: stale element reference: element is not attached to the page document
И перехожу в нужный раздел
antonio33 (antonio-33)
#5
Там точно нет аякс запроса при открытии меню? А если thread.sleep(или его аналог в вашем языке) на секунд пять поставить после открытия меню, И потом попытаться кликнуть по нужному пункту?
Volodymyr (Volodymyr Romanyshyn)
#6
brutusimpuls:
mm_s_w
Можно сначала проверить в консоли, действительно ли елемент есть только один //(@id = ‘mm_s_w’)
если один попробуйте xpath //div(@class= ‘mm_sub2w active’)//(@id = ‘mm_s_w’)
Свойство отображения CSS
❮ Предыдущий Полное руководство по CSS Далее ❯
Пример
Использование различных отображаемых значений:
p. ex1 {display: none;}
p.ex2 {display: inline;}
p.ex3 {display:
block;}
p.ex4 {display: inline-block;}
Попробуйте сами »
Другие примеры «Попробуйте сами» ниже.
Определение и использование
Свойство display
определяет поведение дисплея
(тип поля рендеринга) элемента.
В HTML значение свойства отображения по умолчанию берется из спецификаций HTML или из таблицы стилей браузера/пользователя по умолчанию. значение по умолчанию в XML — встроенное, включая элементы SVG.
Показать демо ❯
Значение по умолчанию: | ? |
---|---|
По наследству: | нет |
Анимация: | нет. Читать о анимированном |
Версия: | CSS1 |
Синтаксис JavaScript: | объект .style.display=»none» Попробуй |
Поддержка браузера
Числа в таблице указывают первую версию браузера, которая полностью поддерживает это свойство.
Собственность | |||||
---|---|---|---|---|---|
дисплей | 4,0 | 8,0 | 3,0 | 3.1 | 7,0 |
Примечание: Значения «flex» и «inline-flex» требуют префикса -webkit- для работы в Safari.
Примечание. «отображение: содержимое» не работает в Edge предыдущая версия 79.
Синтаксис CSS
display: value ;
Значения свойств
Значение | Описание | Играй | ||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
встроенный | Отображает элемент как встроенный элемент (например, ). Любые свойства высоты и ширины не будут иметь никакого эффекта | Демонстрация ❯ | ||||||||||||||||||||||||||||||||||||||
блок | Отображает элемент как элемент блока (например, ). Он начинается на новая строка и занимает всю ширину | Демонстрация ❯ | ||||||||||||||||||||||||||||||||||||||
содержимое | Заставляет контейнер исчезнуть, делая дочерние элементы дочерними элементами элемент следующего уровня в DOM | |||||||||||||||||||||||||||||||||||||||
гибкий | Отображает элемент как гибкий контейнер на уровне блока | |||||||||||||||||||||||||||||||||||||||
сетка | Отображает элемент как контейнер сетки на уровне блоков | |||||||||||||||||||||||||||||||||||||||
встроенный блок | Отображает элемент как блочный контейнер встроенного уровня. Сам элемент отформатирован как встроенный элемент, но вы можете применить значения высоты и ширины | |||||||||||||||||||||||||||||||||||||||
встроенный гибкий | Отображает элемент как гибкий контейнер встроенного уровня | |||||||||||||||||||||||||||||||||||||||
встроенная сетка | Отображает элемент как контейнер сетки встроенного уровня | |||||||||||||||||||||||||||||||||||||||
встроенный стол | Элемент отображается как таблица встроенного уровня | |||||||||||||||||||||||||||||||||||||||
элемент списка | Пусть элемент ведет себя как элемент | Демонстрация ❯ | ||||||||||||||||||||||||||||||||||||||
обкатка | Отображает элемент как блочный или встроенный, в зависимости от контекста | |||||||||||||||||||||||||||||||||||||||
стол | Позволяет элементу вести себя как элемент
Дополнительные примерыПримерДемонстрация использования значения свойства содержимого. В следующих Например, контейнер .a исчезнет, и создание дочерних элементов (.b) дочерние элементы элемента следующего уровня в DOM: .a { .b { Попробуйте сами » ПримерДемонстрация использования наследуемого значения свойства: body { p { Попробуйте сами » ПримерУстановите направление некоторых гибких элементов внутри элемента в обратном направлении
порядок: div { Попробуйте сами » Связанные страницыУчебное пособие по CSS: Отображение CSS и видимость Ссылка HTML DOM: свойство отображения ❮ Назад Полное руководство по CSS Следующий ❯ ВЫБОР ЦВЕТАЛучшие учебникиУчебное пособие по HTMLУчебное пособие по CSS Учебное пособие по JavaScript Учебное пособие Учебное пособие по SQL Учебник по Python Учебник по W3. CSS Учебник по Bootstrap Учебник по PHP Учебник по Java Учебник по C++ Учебник по jQuery Лучшие ссылкиHTML ReferenceCSS Reference JavaScript Reference SQL Reference Python Reference W3.CSS Reference Bootstrap Reference PHP Reference HTML Colors Java Reference Angular Reference jQuery Reference Top7 Examples
Примеры HTML W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности. Copyright 1999-2023 Refsnes Data. Все права защищены. HTML | Свойство отображения стиля DOMУлучшить статью Сохранить статью
Улучшить статью Сохранить статью Свойство отображения Style в HTML DOM используется для установки или возврата типа отображения элемента. Это похоже на свойство видимости, которое отображает или скрывает элемент. С небольшой разницей display: none, скрывает весь элемент, а visible: hidden означает, что невидимым будет только содержимое элемента, но элемент останется в исходном положении и размере. Синтаксис:
object.style.display
object.style.display = значение; Значения свойств:
Возвращаемое значение: Возвращает строку, представляющую тип отображения элемента. Пример 1: В этом примере описывается встроенное значение свойства. html
Вывод: До нажатия на кнопку:
После нажатия на кнопку:
Пример 2: В этом примере описывается значение свойства none. html
Вывод: Перед нажмите кнопку: После нажатия на кнопку: Пример 3: 0101010110110 годы. ценить. html
Вывод: До нажатия на кнопку:
После нажатия на кнопку:
Пример 4: В этом примере описывается значение свойства блока. html
|