Разное

Скрыть html: Как скрыть элемент в html

29.05.2023

основные способы — учебник CSS

В CSS существует несколько способов скрыть элемент. При этом скрытие может быть как полным, так и чисто визуальным. Разберем по порядку каждый вариант.

Скрытие элемента с помощью opacity: 0

Если быть точным, свойство opacity не скрывает элемент, а лишь определяет его степень прозрачности. Значение 1 означает полную непрозрачность объекта, а значение 0, соответственно, приводит к полной прозрачности, в результате чего элемент перестает быть виден для посетителя. Последняя часть предложения важна: элемент будет скрыт лишь визуально, но при этом он будет занимать свое место на странице, влиять на положение других элементов, и с ним можно будет взаимодействовать (к примеру, он станет непрозрачным при наведении мыши, если определить соответствующий стиль для состояния :hover). Скрин-ридеры также будут видеть данный элемент.

Преимуществом свойства opacity является его совместимость с transition. Это значит, что можно заставить элемент изменять свою прозрачность плавно, а не рывком. Тем самым можно создать красивое появление элемента.

Скрытие элемента с помощью visibility: hidden

В отличие от свойства прозрачности, свойство visibility специально предназначено для визуального скрытия элементов. Значение hidden скрывает элемент, а значение visible — показывает. Как и в случае с opacity, элемент продолжает занимать свое место на странице, однако взаимодействовать с элементом, скрытым с помощью visibility: hidden, нельзя. Скрин-ридеры не видят такой элемент.

Свойство visibility не реагирует на свойство transition, а это означает, что изменение значения с hidden на visible (либо наоборот) будет происходить мгновенно.

На практике для временного скрытия элементов часто используется два свойства сразу — visibility и opacity (в одном из практических уроков мы уже показывали этот прием). При этом убивается сразу несколько зайцев: с помощью visibility элемент скрывается как положено (в т. ч. от скрин-ридеров), а с помощью opacity обеспечивается плавное появление элемента в необходимый момент.

Скрытие элемента с помощью display: none

Свойство display со значением none стоит использовать в том случае, если вам нужно полностью скрыть элемент. Такой объект (и все его дочерние элементы) не только перестает быть виден посетителю и скрин-ридеру, но и не занимает места на странице и не влияет на расположение других элементов. Всё выглядит так, словно элемента и нет. Естественно, взаимодействовать с элементом, который скрыт данным образом, тоже невозможно.

Как и в случае со свойством visibility, свойство display не поддерживает плавные переходы transition.

Скрытие элемента с помощью position: absolute

Еще один способ скрыть элемент исключительно визуально — задать ему абсолютное позиционирование, выдернув из общего потока документа, и затем переместить далеко за пределы видимой области путем установки больших отрицательных значений для свойств top и left. Например:


div {
	position: absolute;
	top: -9999px;
	left: -9999px;
}

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


Далее в учебнике: CSS Grid Layout — будущее уже здесь.

html — Как скрыть элемент на телефоне, а на пк оставить?

У меня есть элемент на странице, который должен отображаться только на компьютерах.

Как мне это сделать? Можно ли это реализовать с помощью css @media?

  • html
  • css

В Вашем случае Вы можете использовать, к примеру, медиа-запрос и указывать в нем максимальную ширину экрана (в пикселях или, лучше всего, в относительных единицах, типа em), на которой указанный Вами элемент будет скрываться либо свойством display: none;, либо visibility: hidden;, в зависимости от того, какого эффекта Вам нужно добиться при скрытии элемента.

Размер экрана, который Вы будете считать уже компьютерным, определите сами, но обычно, это минимум

1024px (или 64em), но лучше будет указать ширину 1200px (или 75em).

Это может выглядеть примерно так:

.element {
    display: block;
}
@media(max-width: 75em) {
    .element {
        display: none;
    }
}

Можно пойти другим путем и указать наоборот: минимальную ширину экрана, при которой Ваш элемент будет отображаться, а на всех экранах, ниже этой ширины, он будет скрываться. Пример:

.element {
    display: none;
}
@media(min-width: 75em) {
    .element {
        display: block;
    }
}

Используя правило @media Тут немного инфы

.resize{
  width: 720px;
  height: 620px;
  border: 2px solid #000;
  display: flex;
  flex-direction: column;
  justify-content: center;
  resize: both;
  overflow: auto;
}
.resize > div{
  width: 100%;
  text-align: center;
}
@media only screen and (max-width: 480px) {
  .pc{
    display: none;
  }
}
@media only screen and (min-width: 480px) {
  .
mob{ display: none; } }
<div>
  <div>Показать всем</div>
  <div>Показать на пк</div>
  <div>Показать на телефоне</div>
</div>

Зарегистрируйтесь или войдите

Регистрация через Google

Регистрация через Facebook

Регистрация через почту

Отправить без регистрации

Почта

Необходима, но никому не показывается

Отправить без регистрации

Почта

Необходима, но никому не показывается

Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки

css — Как правильно скрыть любой HTML-тег?

спросил

Изменено 4 года, 4 месяца назад

Просмотрено 51к раз

Что такое правильный CSS для скрытия любого HTML.

Пример. Как тег
. Я использую для этого:

 div {display:none; видимость:скрыта;}
 

Поддерживает ли CSS все основные браузеры для скрытия этого div. Особенно поддерживает ли он I.E.

  • HTML
  • CSS

1

Использовать видимость: скрыто; , если вы все еще хотите, чтобы элемент занимал место в макете страницы. Например:

 Здравствуйте!
Скрытый
World

Вы по-прежнему будете видеть 100 пикселей между двумя фрагментами текста, но вы не увидите содержимое внутри div.

Использование:

 Привет
Скрытый
World​​​​

Между двумя текстовыми элементами не будет пробела, так как

div никак не повлияет на макет.

Оба поддерживаются любым современным браузером.

0

Оба display:none и visible:hidden повсеместно поддерживаются браузерами с поддержкой CSS, поэтому применяются только общие предостережения относительно CSS. Имеют различный эффект: display:none заставляет документ отображаться так, как если бы элемента вообще не было, тогда как visible:hidden означает, что элемент будет должным образом обработан при форматировании документа, обычно занимая некоторое пространство, но удаленный из представления как будто он стал полностью прозрачным.

Какой из них вы используете, зависит от вашей цели скрыть элемент. Например, если вы динамически (с клиентским скриптом) отключаете или включаете какой-то контент, то visibility:hidden может быть лучше, так как не вызывает перерисовку другого контента.

Использование обоих обычно бессмысленно, так как display:none делает visible:hidden неактуальным (хотя в каскаде может случиться так, что ваши настройки для этих свойств могут быть переопределены другими таблицами стилей, а затем

display:none может утратить силу).

0

Вам даже не нужно visibility:hidden; .

 раздел {
    дисплей:нет;
}
 

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

В HTML5 есть новый глобальный атрибут с именем hidden .

Из https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/hidden:

Скрытый глобальный атрибут — это логический атрибут, указывающий, что элемент еще не актуален или больше не актуален. Например, его можно использовать для скрытия элементов страницы, которые нельзя использовать до завершения процесса входа в систему. Браузеры не будут отображать элементы с установленным скрытым атрибутом.

Помните, что скрытый имеет семантическое значение по сравнению с отображением и видимостью . Вот почему это не атрибут CSS, а атрибут HTML.

2

дисплей : нет; достаточно и стандартный способ сделать это

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя электронную почту и пароль

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Как скрыть элементы в адаптивном макете

Чтобы скрыть элемент в адаптивном макете, нам нужно использовать свойство отображения CSS со значением «none» вместе с правилом @media. Содержимое второго элемента

с классом «hidden-mobile» будет скрыто на устройствах размером менее 767 пикселей.

Пример скрытия элемента на очень маленьких устройствах:

 

  <голова>
    
    <стиль>
      @media (максимальная ширина: 767 пикселей) {
        .скрытый-мобильный {
          дисплей: нет;
        }
      }
    
<тело>

Привет

Например, есть какой-то текст.

Этот текст будет скрыт на больших устройствах.

Например, есть какой-то текст.

Попробуй сам »

Чтобы отобразить элемент на очень маленьких устройствах (телефоны <768 пикселей) и средних устройствах (рабочие столы ≥992 пикселей) и скрыть его на маленьких устройствах (планшеты ≥768 пикселей), вам нужно попробовать следующее.

Пример скрытия элемента на небольших устройствах:

 

  <голова>
    
    <стиль>
      @media (минимальная ширина: 768 пикселей) {
        . текст {
          дисплей: нет;
        }
      }
      @media (минимальная ширина: 992px) {
        .текст {
          дисплей: блок;
        }
      }
    
  
  <тело>
     

Привет

Например, есть какой-то текст.

Этот текст будет скрыт на больших устройствах.

Например, есть какой-то текст.

Попробуй сам »

Решения с Bootstrap

В Bootstrap 3.4.1 мы можем использовать класс «hidden-xs», чтобы скрыть элемент на телефонах. Итак, в следующем примере мы покажем, как элемент будет скрыт на очень маленьких устройствах.

Пример скрытия элемента на очень маленьких устройствах с помощью Bootstrap:

 

  <голова>
    
    
    <стиль>
      тело {
        фон: нет;
      }
    
  
  <тело>
     

Привет

Например, есть какой-то текст.

Этот текст будет скрыт на телефонах.

Например, есть какой-то текст.

Попробуй сам »

В Bootstrap 4 класс hidden-* (также visible-*) больше не существует. Чтобы скрыть элемент на некоторых уровнях или точках останова, вам нужно использовать классы отображения d-*.

Очень маленькое устройство (xs) является точкой останова по умолчанию, если оно не перекрывается более крупной точкой останова. Таким образом, в Bootstrap 4 больше нет инфикса -xs.

В Bootstrap 4.3, чтобы скрыть элемент только на средних устройствах, используйте классы «d-md-none» и «d-lg-block».

Пример скрытия элемента на средних устройствах с Bootstrap:

  <голова> <стиль> тело {
 фон: нет;
 }   <тело>

Привет

Например, есть какой-то текст.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *