桂花飘香的季节, 小明迎来了自己当面试官的第一位面试者小红。初见时的惊鸿一瞥, 小明...。
小明觉得这时候必须展现自己技术的深度,一想头几天刚研究过伪类,可以一试,一想到这,小明得意一笑😊
:default
- Сяо Мин: Псевдокласс: по умолчанию Ты что-нибудь об этом знаешь?
- Сяохун слегка улыбнулся: этот псевдокласс действует только на элементы формы, а значит, находится в состоянии по умолчанию.
- Сяо Мин: Может ли раскрывающийся список (выбрать) и поле с несколькими вариантами выбора (флажок) иметь несколько состояний по умолчанию?
- Сяохун: Ну да
- Сяо Мин: Что на самом деле делает этот псевдокласс?
- Сяохун: Я думаю, что пользователи могут знать, какие параметры по умолчанию, когда они выбирают набор данных, которые могут играть определенную руководящую роль и улучшать взаимодействие с пользователем.
- Кроме того, если опция не выбрана, флажок и радио не отмечены, псевдокласс :default не будет соответствовать.
- Во-вторых, быстрая модификация javascript не повлияет на псевдокласс :default
- Я чувствую, что могу оперировать методом выбора платежа, например, в платежном пакете, WeChat и банковской карте один может быть выбран по умолчанию.
Подробности следующие 👇
- Сяохун: Не верите мне?Тогда ты сильно ткнешь меня
- Сяо Мин: Почему такая странная просьба 👀 . . .
:empty
- Сяо Мин: Ну, вы связались с псевдо-классом :empty?
- Сяохун возился с волосами на лбу.
- Сердце Сяо Мина дрогнуло.
- Xiaohong: Это в основном соответствует пустым элементам тега, есть несколько моментов, на которые следует обратить внимание.
** благодарный灬ВулканИсправления только комментариев могут совпадатьПрикрепите демо и ткните меня
-
- Внутри элемента есть пробелы, символы новой строки не совпадают
-
- Закрывающие элементы без закрывающих тегов также не могут совпадать: пустой псевдокласс
-
- Содержимое ::before, ::after не влияет на сопоставление псевдокласса :empty.
- Отправьте скриншот кода 👇
// css
.cs-empty:empty {
height: 20px;
background-color: lightblue;
}
h3::after {
content: 'wo shi h3';
}
<!-- 正常匹配 -->
<div class="cs-empty"></div>
<!-- 有注释不匹配 -->
<div class="cs-empty"><!-- 注释 --></div>
<!-- 有空格不匹配 -->
<div class="cs-empty"> </div>
<!-- 有换行 不匹配 -->
<div class="cs-empty">
</div>
<!-- 没有闭合标签的闭合元素 不匹配 -->
<p class="cs-empty">
<p class="cs-empty">
<!-- ::before, ::after 有内容 正常匹配 -->
<h3 class="cs-empty"></h3>
- Сяо Мин: Есть ли какая-то конкретная практичность?
- Сяохун: Конечно
- Скройте пустые элементы, чтобы исключить вероятность того, что пустые элементы будут иметь эффекты макета.
- Умные советы по отсутствующим полям
// 隐藏空元素
.cs-module:emtpy {
display: none;
}
.ajax dd {
margin-top: -1.3em;
}
.ajax dd:empty::after {
content: '没有搜素结果';
}
// 智能提示
<dl class="ajax">
<dt>姓名</dt>
<dd>张三</dd>
<dt>性别:</dt>
<dd></dd>
<dt>手机:</dt>
<dd></dd>
<dt>邮箱</dt>
<dd></dd>
</dl>
:placeholer-shown
- Сяо Мин подумал про себя, что с этой девушкой все в порядке, и продолжил: :placeholder-show Вы понимаете?
- Сяохун: Это тривиально
- Указывает, что при отображении содержимого заполнителя поля ввода псевдокласс соответствует
- Есть, вероятно, два конкретных использования
- Взаимодействие при наборе текста
- Нулевое оценочное суждение
// 输入交互的关键代码
.input:placeholder-shown::placeholder {
color: transparent;
}
.g {
position: relative;
}
.input-label {
position: absolute;
left: 16px;
top: 14px;
pointer-events: none;
}
.input {
line-height: 3.5;
}
.input:not(:placeholder-shown) + .input-label,
.input:focus + .input-label {
transform: scale(.75) translate(0, -32px);
}
<div class="g">
<input class="input" placeholder="邮箱" />
<label for="" class="input-label">邮箱</label>
</div>
Конкретная картинка 👇 Это также проявление, которое позволяет пользователям узнать, что в данный момент заполнено
Только один небольшой пример на картинке выше имеет эффект фокуса, остальные эффекты фокусаПожалуйста, ткните меня сильно 👇, чтобы испытать
// 空值判断的具体代码
input:placeholder-shown + small::before,
textarea:placeholder-shown + small::before {
content: "尚未输入内容";
color: red;
font-size: 87.5%;
}
// 这里的 placeholder 的空格很关键 自己可以尝试去掉 试一下
<input type="text" placeholder=" " /> <small></small>
<textarea type="text" placeholder=" "></textarea> <small></small>
Конкретный дисплей выглядит следующим образом 👇
Фактическая операцияВы можете нажать на меня👇, чтобы испытать
- Сяо Мин подумал про себя, что в этой младшей сестренке что-то есть, давай поговорим еще немного: ты хочешь пить, хочешь синюю чашечку?
- Сяохун: Хорошо!
- Сяо Мин пошел купить чай с молоком🥤. . .
наконец
Вышеупомянутое заимствовано изУчитель Чжан Синьсюй«Мир CSS-селекторов», чтобы написать эти примеры, я перечитал его еще раз и многому научился. Что касается Сяо Мина, конечно, он должен вернуться 😄