输入字段 iOS Safari 错误 - 无法输入任何文本
Input field iOS Safari bug — Can't type in any text
我在页面的表单中输入了自定义样式的文本。
它在桌面上按预期工作,Android、iOS Chrome,但有时在 iOS Safari 中,当在框中键入时,没有文本输入,即使该字段具有焦点并且光标在闪烁(不会经常发生,但对于某些用户来说似乎一直都在发生)。
表单代码非常标准,(直接从Mailchimp复制而来)
<form action="[mailchimp subscribe url]" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate>
<div id="mc_embed_signup_scroll">
<input type="email" value="" placeholder="Email" name="EMAIL" class="email" id="mce-EMAIL" placeholder="email address" required>
<input type="submit" value="REQUEST INVITE" name="subscribe" id="mc-embedded-subscribe" class="button">
<div id="mc_embed_signup_scroll">
<div style="position: absolute; left: -5000px;"><input type="text" name="b_e563c0e6b5344e25de276c14f_5e5c7a08a6" tabindex="-1" value=""></div>
</div>
</form>
习惯CSS是:
input.email, .button {
outline: none;
border-radius: 3px;
-webkit-appearance: none;
appearance: none;
width: 240px;
padding: 12px 16px;
background-color: rgba(255,255,255,0.1);
margin: 0;
vertical-align: middle;
font-size: 12px;
letter-spacing: 0.1em;
font-family: 'Calibre Medium';
color: white !important;
opacity: 1;
text-transform: uppercase;
-webkit-font-smoothing: antialiased;
}
::placeholder, ::-webkit-input-placeholder, ::-moz-placeholder, :-ms-placeholder, input.email, .button {
color: white !important;
transition: all 0.15s;
-webkit-transition: all 0.15s;
-moz-transition: all 0.15s;
-ms-transition: all 0.15s;
-o-transition: all 0.15s;
}
有没有其他人以前看过这个?
我正在使用 flexbox 并且页面上有一个动画 SVG,我知道这有时会导致 iOS Safari 中的异常行为...
您的 div 标签应该是 display-block 并清除两者。
#mc_embed_signup_scroll { display:block; }
输入{ -webkit-user-select:text;}
这将解决问题。
浏览器特定的css 文本输入字段规则
input {
-webkit-user-select: text; /* Chrome, Opera, Safari */
-moz-user-select: text; /* Firefox 2+ */
-ms-user-select: text; /* IE 10+ */
user-select: text; /* Standard syntax */
}
我在页面的表单中输入了自定义样式的文本。
它在桌面上按预期工作,Android、iOS Chrome,但有时在 iOS Safari 中,当在框中键入时,没有文本输入,即使该字段具有焦点并且光标在闪烁(不会经常发生,但对于某些用户来说似乎一直都在发生)。
表单代码非常标准,(直接从Mailchimp复制而来)
<form action="[mailchimp subscribe url]" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate>
<div id="mc_embed_signup_scroll">
<input type="email" value="" placeholder="Email" name="EMAIL" class="email" id="mce-EMAIL" placeholder="email address" required>
<input type="submit" value="REQUEST INVITE" name="subscribe" id="mc-embedded-subscribe" class="button">
<div id="mc_embed_signup_scroll">
<div style="position: absolute; left: -5000px;"><input type="text" name="b_e563c0e6b5344e25de276c14f_5e5c7a08a6" tabindex="-1" value=""></div>
</div>
</form>
习惯CSS是:
input.email, .button {
outline: none;
border-radius: 3px;
-webkit-appearance: none;
appearance: none;
width: 240px;
padding: 12px 16px;
background-color: rgba(255,255,255,0.1);
margin: 0;
vertical-align: middle;
font-size: 12px;
letter-spacing: 0.1em;
font-family: 'Calibre Medium';
color: white !important;
opacity: 1;
text-transform: uppercase;
-webkit-font-smoothing: antialiased;
}
::placeholder, ::-webkit-input-placeholder, ::-moz-placeholder, :-ms-placeholder, input.email, .button {
color: white !important;
transition: all 0.15s;
-webkit-transition: all 0.15s;
-moz-transition: all 0.15s;
-ms-transition: all 0.15s;
-o-transition: all 0.15s;
}
有没有其他人以前看过这个?
我正在使用 flexbox 并且页面上有一个动画 SVG,我知道这有时会导致 iOS Safari 中的异常行为...
您的 div 标签应该是 display-block 并清除两者。
#mc_embed_signup_scroll { display:block; }
输入{ -webkit-user-select:text;}
这将解决问题。
浏览器特定的css 文本输入字段规则
input {
-webkit-user-select: text; /* Chrome, Opera, Safari */
-moz-user-select: text; /* Firefox 2+ */
-ms-user-select: text; /* IE 10+ */
user-select: text; /* Standard syntax */
}