当前位置: 首页 > 面试题库 >

模拟占位符

汪凌
2023-03-14
问题内容

我有一个不想触摸的Wordpress插件,所以我希望我的目标只能通过CSS来实现。我在Chrome开发者工具中摆弄了CSS(没有双关语),但一直到头都一团糟。

我想要的标签是在输入字段的顶部。“在顶部”表示Z-而非Y轴。以下是HTML结构。在此先感谢您动动脑筋。

<p>

  <label>Name<br>

    <span>

      <input type="text" name="your-name" value="" size="40">

    </span>

  </label>

</p>

问题答案:

只需进行少量标记更改和脚本,即可完成此操作

该脚本只是将用户值附加到其value属性,因此可以使用CSS设置其样式

p label {

  position: relative;

}

p label input {

  margin-top: 10px;

}

p label input[required] + span::after {

  content:  ' *';

  color: red;

}

p label span {

  position: absolute;

  top: 2px;

  left: 5px;

  pointer-events: none;

  transition: top .5s;

}

p label input:not([value=""]) + span,

p label input:focus + span {

  top: -20px;

}


<p>

  <label>

      <input oninput="this.setAttribute('value', this.value)" type="text" name="your-name" value="" size="40" required>

      <span>Name</span>

  </label>

</p>

由于使用CSS更改HTML5输入的占位符是一个热门话题,因此,这里有一些其他选择,它们具有更简单,更可重用的标记结构

.placeholder {

  position: relative; padding-top: 15px;

}

.placeholder label {

  position: absolute; top: 17px; left: 5px;

  pointer-events: none; transition: top .5s;

}

.placeholder input[required] + label::after {

  content:  ' *'; color: red;

}

.placeholder input:not([value=""]) + label,

.placeholder input:focus + label {

  top: -5px;

}


<div class="placeholder">

  <input oninput="this.setAttribute('value', this.value)" type="text" name="name" value="" required>

  <label>Name</label>

</div>

由于脚本非常小,因此我可以将其内联应用,尽管当然可以使用外部事件处理程序添加相同的行为,例如这样,并针对多个对象input

window.addEventListener('load', function() {

  var placeholders = document.querySelectorAll('.placeholder input');

  for (var i = 0; i < placeholders.length; i++) {

    placeholders[i].addEventListener('input', function() {

      this.setAttribute('value', this.value);

    })

  }

})


.placeholder {

  position: relative; padding-top: 15px;

}

.placeholder + .placeholder {

  margin-top: 10px;

}

.placeholder label {

  position: absolute; top: 17px; left: 5px;

  pointer-events: none; transition: top .5s;

}

.placeholder input[required] + label::after {

  content:  ' *'; color: red;

}

.placeholder input:not([value=""]) + label,

.placeholder input:focus + label {

  top: -5px;

}


<div class="placeholder">

  <input type="text" name="name" value="" required>

  <label>Name</label>

</div>

<div class="placeholder">

  <input type="text" name="email" value="" required>

  <label>Email</label>

</div>

<div class="placeholder">

  <input type="text" name="address" value="">

  <label>Address</label>

</div>


 类似资料:
  • 问题内容: 在日期字段上不能使用占位符,但我确实需要它。 我想要两个日期输入,每个文本上都有文本“ From”和“ To”作为占位符。 问题答案: 我正在使用以下CSS绝招:

  • 类型 Glide允许用户指定三种不同类型的占位符,分别在三种不同场景使用: placeholder error fallback 占位符(Placeholder) 占位符是当请求正在执行时被展示的 Drawable 。当请求成功完成时,占位符会被请求到的资源替换。如果被请求的资源是从内存中加载出来的,那么占位符可能根本不会被显示。如果请求失败并且没有设置 error Drawable ,则占位符将

  • #{}速度快,能防止sql注入,是占位符方式,先预编译,然后填充参数,字符串格式,用户名=(___),参数只是下划线上的内容 ${}是直接拼接到语句上,这种方式需要自己拼括号和参数,但是也可以拼接想执行的任何语句,也就是传说中的sql注入 详情如下 在MyBatis中使用参数进行SQL拼装经常会使用到#{var}和${var}两种参数的设置方式。下面是两种方式的不用之处: #{var} 使用预编译

  • 问题内容: 我正在开发一个可获取用户指定的纬度,经度和海拔高度的APP,然后在手机上伪造该GPS位置,并在Google地图中显示我位于该位置。我对清单文件具有必需的权限,并且在开发人员设置中启用了模拟位置。 但是看起来我的GPS位置在Google地图上根本没有改变,这是什么问题? 更新:我刚刚在手机上安装了一个名为“ fake GPS location”的应用程序,该应用程序可以正常运行,但是我仍

  • 问题内容: 我一直在尝试使用tensorflow两天,现在在python2.7和3.4中一遍又一遍地安装和重新安装它。无论我做什么,尝试使用tensorflow.placeholder()时都会收到此错误消息 这是非常简单的代码: 无论我做什么,我总是可以追溯到: 有人知道我该如何解决吗? 问题答案: 这也发生在我身上。我有tensorflow,并且运行良好,但是当我在之前的tensorflow旁

  • 我有困难使用在我的函数,采取可变模板。我开始认为我不需要使用可变模板,但我已经尝试了这么久,我在杂草中思考,需要一个有新面貌的人。 下面的模板函数接受一个常规模板参数,然后接受一个可变参数。它导致编译器错误: 编译器错误: 错误1错误C2664:“状态组件::registerEvent” 这里到底出了什么问题?我如何修复这个编译器错误?