Это не то же самое. В этом случае div является родительским для ввода, и некоторые свойства div передаются на ввод, но свойства ввода не передаются в div. Это влияет только на ввод. Например:
/*first case: div has background color and input has not*/
/*all these properties are set for the first div and affects the input (padding and text-align)*/
.firstDiv {
height: 100px;
background-color: lightblue;
text-align: center;
padding: 30px;
}
/*second case: input has background color and div has not*/
/*I'll copy all the properties on firstDiv and use on seconInput to see what happens*/
.secondInput{
height: 100px;
background-color: lightblue;
text-align: center;
padding: 30px;
}
<div class="firstDiv"><input type="text" class="firstInput" placeholder="I am first input"></div>
<div class="secondDiv"><input type="text" class="secondInput" placeholder="I am second input"></div>
И input, и div имеют одинаковые свойства css. В первом случае мы передали их в div, а во втором - для ввода. И теперь вы можете видеть разницу и то, что они имеют одинаковый эффект, они просто делают одно и то же с разными тегами с разным наследованием.