Floating Label

Posted on : 23rd April 2022 | Author : @ByDev24

						<div class="center-space">
	<div class="form-group">
		<label for="full-name">Full Name</label>
		<input type="text" class="input-group" onfocus="floatLabel(this, 'full-name')" onblur="floatLabelDown(this, 'full-name')">
	</div>
	<div class="form-group">
		<label for="email">Email</label>
		<input type="text" class="input-group" onfocus="floatLabel(this, 'email')" onblur="floatLabelDown(this, 'email')">
	</div>
</div>

					

						   .center-space {
    padding: 30px;
    display: grid;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
}
.form-group label {
    display: block;
    position: absolute;
    background: #fff;
    top: 16px;
    left: 10px;
    padding: 2px;
    font-size: 15px;
    color: #a5a5a5;
    pointer-events: none;
    transition: 0.4s;
}
.form-group label.focused {
    top: -9px;
    font-size: 14px;
}
.form-group {
	text-align: left;
	position: relative;
	font-family: sans-serif;
}
input.input-group {
    padding: 10px;
    font-size: 15px;
    box-shadow: 5px 5px 5px #00000014;
    outline: none;
    border-radius: 4px;
    border: 1px solid #efefef;
    height: 50px;
}

					

						const floatLabel = (input, target) => {
	var inputValue = input.value
	var targetLabel = document.querySelector("label[for='"+target+"']")
	targetLabel.classList.add("focused")
}
const floatLabelDown = (input, target) =>{
	var inputValue = input.value
	var targetLabel = document.querySelector("label[for='"+target+"']")
	if(inputValue == ''){
		targetLabel.classList.remove("focused")
	}else{
		targetLabel.classList.add("focused")
	}
}

					

Output

More Snipps