html - 仅 CSS : Show element whilst input is selected

标签 html css

我想在选择输入字段时显示一个元素,但最好不要使用任何 JavaScript 来执行此操作。

因为我不能将元素放在输入字段中(很明显),当输入字段处于事件状态时,我不能在我的 CSS 中定位它(我假设 :active 选择器可以用于输入字段是当前选中而不是用鼠标点击它)。

目前我有这样的结构:

<div class="outer">
  <input type="text" name="field" />
  <div class="element"></div>
</div>

:active 之后是否有 :root 选择器或类似的选择器来定位父元素?

现在我的 CSS:

.element {
  display: none;
}

.outer:active .element {
  display: block;
}

这基本上是有效的,但是只有当你在外部元素内的任何地方按住你的点击时才会显示该元素,我不想使用 :hover,完全卡在这里,我已经进行了一轮搜索,但找不到太多。

最佳答案

演示 - http://jsfiddle.net/victor_007/gu531aay/3/

.element {
  display: none;
}
input:focus ~ .element {
  display: block;
}
<div class="outer">
  <input type="text" name="field" />
  <div class="element">hello</div>
</div>

关于html - 仅 CSS : Show element whilst input is selected,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26992550/

相关文章:

html - Firefox 溢出 :hidden not working as it does in Chrome/IE

html - CSS 计数器增量不起作用

html - WPF的grid based layout和html中禁忌的table based layout不一样吗?

html - 从父页面删除滚动

html - 如何使用纯 CSS 交换表格单元格

css - 简单的 CSS Scale-Nine 布局

javascript - 如何根据其 li 调整水平菜单的大小?

javascript - 单击和拖动时的 jQuery mouseup 事件

javascript - Safari JavaScript 问题

jquery - 如何获取点击状态以覆盖 jQuery 中的悬停状态