我尝试使用此UI输入,但在使用媒体查询时它不会改变任何内容。
当我尝试另一个UI时,它可以工作,但不适用于这个。
..............................................................................................................................................................
我的代码问题是什么?
.centered
{
width: 50%;
margin: auto;
}
.group {
width: 100%;
overflow: hidden;
position: relative;
}
.label {
position: absolute;
top: 40px;
color: #666666;
font: 400 26px Roboto;
cursor: text;
transition: 0.3s ease;
width: 100%;
text-align: center;
}
.input {
display: block;
width: 100%;
padding-top: 36px;
border: none;
border-radius: 0;
font-size: 30px;
transition: .3s ease;
text-align: center;
}
.input:valid ~ .label {
top: 3px;
font: 400 26px Roboto;
}
.input:focus {
outline: none;
}
.input:focus ~ .label {
top: 3px;
font: 400 26px Roboto;
}
.input:focus ~ .bar:before {
transform: translateX(0);
}
.bar {
border-bottom: 2px solid #ff5126;
width: 100%;
margin-top: 6px;
transition: .3s ease;
}
.input:valid ~ .bar
{
border-bottom: 2px solid #3bb873;
}
@media screen and (max-width: 1000px)
{
#centered-email
{
width: 100%;
}
}
<div class="centered">
<div class="group">
<input type="text" class="input name" id="name" required autocomplete="off"/>
<label class="label name-l" for="name">ایمیل</label>
<div class="bar"></div>
</div>
</div>
id
- > centered-email
没有元素。
改成了 -
在媒体查询中将#centered-email
替换为.centered
,并将修复您当前的问题。
修正片段 -
.centered {
width: 50%;
margin: auto;
}
.group {
width: 100%;
overflow: hidden;
position: relative;
}
.label {
position: absolute;
top: 40px;
color: #666666;
font: 400 26px Roboto;
cursor: text;
transition: 0.3s ease;
width: 100%;
text-align: center;
}
.input {
display: block;
width: 100%;
padding-top: 36px;
border: none;
border-radius: 0;
font-size: 30px;
transition: .3s ease;
text-align: center;
}
.input:valid~.label {
top: 3px;
font: 400 26px Roboto;
}
.input:focus {
outline: none;
}
.input:focus~.label {
top: 3px;
font: 400 26px Roboto;
}
.input:focus~.bar:before {
transform: translateX(0);
}
.bar {
border-bottom: 2px solid #ff5126;
width: 100%;
margin-top: 6px;
transition: .3s ease;
}
.input:valid~.bar {
border-bottom: 2px solid #3bb873;
}
@media screen and (max-width: 1000px) {
.centered {
width: 100%;
}
}
<div class="centered">
<div class="group">
<input type="text" class="input name" id="name" required autocomplete="off" />
<label class="label name-l" for="name">ایمیل</label>
<div class="bar"></div>
</div>
</div>
我想这些都是问题所在:
1)找不到名为“
#centered-email
”的id的div。2)使用
@media only screen
而不是@media screen
在jsfiddle中查看:http://jsfiddle.net/3ob20zwx/3/
看起来像现在工作。希望你得到你正在寻找的东西:)美好的一天!