input的type=“date“时placeholder不显示,解决方案

input的type="date"时placeholder不显示,解决方案

步骤如下:
1、使用伪类模拟

input[type="date"]::before {
	content: attr(placeholder);
}

做完上面之后,会发现在使用的时候即使选了时间,这个placeholder会依旧存在,所以要使用第2步js控制

2、使用js控制placeholder展示与否,假定该时间选择器id=“time”

let timeItem = document.getElementById("time");

// 获得焦点时去掉placeholder
timeItem.onfocus = function() {
	this.removeAttribute("placeholder")
}

// 值发生改变后,如果值为空的话添加placeholder
timeItem.onchange = function() {
	if(!this.value){
		this.setAttribute("placeholder", "请选择日期");
	}
}

你可能感兴趣的:(前端,javascript,前端,css3)