JSFiddle - React, Tailwind, and code Playground
by g4165262
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Responsive Inline Form with Icons and Buttons</title>
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css">
<style>
.input-icon {
position: relative;
}
.input-icon i {
position: absolute;
right: 10px;
top: 50%;
transform: translateY(-50%);
pointer-events: none;
padding :0 10px;
}
.form-control {
font-size:1vw;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
.form-select {
font-size:1vw;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
.journey-button {
border-radius : 25px;
}
.icon-gray {
color: #C8C8C8;
padding-right
}
.form-select {
border:none;
}
</style>
</head>
<body style="background-color:black;">
<div class="container mt-5">
<form class="row g-3 align-items-center">
<!-- Date Picker with Icon -->
<div class="col-md-3 input-icon" style="">
<input onfocus="(this.type='date')" onblur="(this.type='text')" placeholder="Flight Date" type="date" class="form-control rounded-0 rounded-start-5" id="datepicker" name="date">
<i class="fas fa-calendar-alt icon-gray"></i>
</div>
<!-- First Dropdown with Icon -->
<div class="col-md-3 input-icon" style="">
...
CSS
@media screen and (max-width: 800px) {
#dropdown1 {
border-top-left-radius : 25px!important;
border-bottom-left-radius: 25px!important;
border-top-right-radius : 25px!important;
border-bottom-right-radius: 25px!important;
}
#datepicker {
border-top-right-radius : 35px!important;
border-bottom-right-radius: 35px!important;
}
#dropdown2 {
border-top-left-radius : 35px!important;
border-bottom-left-radius: 35px!important;
}
}
@media screen and (min-width: 800px) {
.input-icon {
padding-left:0!important;
padding-right:0!important;
}
}