而不是标记表单中的每个字段,有时在每个字段中都有占位符文本(从设计角度来看)是优选的。例如,而不是这样的:在仅包含CSS的输入字段中占位符文本(无JavaScript)
----------------------------------
Full Name: | |
----------------------------------
你有这样的:
----------------------------------
| Full Name |
----------------------------------
的,当你在野外单击,文字消失,你可以写任何你想要的。如果您在未输入任何文本的情况下跳过该字段,则会重新出现占位符。
我已经看到这样做有很多方法,但所有方法都涉及JavaScript。例如,Twitter在他们的signup page上做了一个体面的工作,但是如果Javascript被禁用,你最终会在“全名”这个词上输入你的名字。
我正在寻找一种即使JavaScript禁用也能正常工作的CSS方法。我想出的唯一潜在解决方案是将<input>
标记的背景设置为所需文本的图像,然后使用伪类在有人单击文本框时清除背景图像。这似乎工作,但不必使用图像很好。
有没有人知道如何做到这一点的好资源?
如果你解释占位符属性做什么对于那些不灵通这将是很好。就像我在一分钟前。我不认为旧的CSS(预HTML5/CSS3时代)可以做到这一点...... – TheZ 2012-07-06 23:52:16
我认为你正在将CSS推进到它不能执行你所期望的任务的领域。有'* before'和':: after'伪元素的* *可能性,但是它们对'input'元素不可靠,任何实现了伪元素的浏览器也会实现'placeholder'属性。 – 2012-07-06 23:52:18
通过“占位符”,我认为他指的是显示示例文本的文本框(例如:“您的姓名在这里”),直到用户选择它。 – username 2012-07-06 23:57:31