流体填充?无法使用高度或宽度



我正在修改用于上传文件的html form输入(输入类型"file"),但由于某种原因,我无法修改此元素的高度和宽度以使其成为网页的100%(流体)。

我找到了使用高度和宽度的替代方法,即使用元素填充。使用填充的缺点是我根本无法使其流畅,因为当我使用 100% 时,它大于设备视口。但是如果我将其更改为大约 50%,它仍然大于设备视口。

正在寻找解决方案,我非常怀疑这个问题是否会得到解决,我期待答案说它做不到,但问没有坏处。

我的网页:

<!DOCTYPE html>
<html>
<head>   
<link href="master.css" type="text/css" rel="stylesheet" />
</head>
<body>
<form action="upload.php" method="post">
<input id="form" type="file" onchange="this.form.submit()" name="myFile"/>
</form>
</body>

</html>

.CSS:

html, body {
    padding: 0px;
    margin: 0px;
    background-color: red;
    height: 100%;
    width: 100%;
}
#form {
    padding-top: 50%; 
    box-sizing: border-box; 
    background-color: green;
}

提前谢谢。

这是

出了名的困难,不建议设置input字段的样式。相反,创建一个label并使用 for 属性将其附加到input,并改为设置label样式

html, body {
    padding: 0px;
    margin: 0px;
    background-color: red;
    height: 100%;
    width: 100%;
}
form,label {
  height: 100%;
}
#form {
  padding-top: 50%; 
  box-sizing: border-box; 
  background-color: green;
  display: none;
}
label {
  width: 100px;
  background: blue;
  display: block;
  color: #fff;
}
<form action="upload.php" method="post">
  <label for="form"></label>
  <input id="form" type="file" onchange="this.form.submit()" name="myFile"/>
</form>

最新更新