【问题标题】:Styling :invalid on a Tel field not working as expected样式:在 Tel 字段上无效,无法按预期工作
【发布时间】:2020-01-10 10:45:21
【问题描述】:

我已经尝试实施以下解决方案来正确设置无效输入的样式,它适用于文本类型字段,但不幸的是,它似乎在 Chrome 和 FireFox 中的电话和数字字段上被破坏了。有没有人有解决这种困境的替代方案?

form.standard-form.enhanced {
    input:not(:placeholder-shown):invalid {
        border: 2px solid #f00;
    }

    input:not(:placeholder-shown):valid {
        border: 2px solid $green;
    }
}

参考链接:

https://stackoverflow.com/questions/7920742/delay-html5-invalid-pseudo-class-until-the-first-event#=

【问题讨论】:

    标签: html css


    【解决方案1】:

    它似乎工作正常。使用点作为输入来查看无效,使用任何数字来查看有效输入。

    form.standard-form.enhanced input:not(:placeholder-shown):invalid {
      border: 2px solid red;
    }
    
    form.standard-form.enhanced input:not(:placeholder-shown):valid {
      border: 2px solid green;
    }
    <form class="standard-form enhanced">
      <input type="number" placeholder="0">
    </form>

    【讨论】:

    • 感谢杰拉德,我的意思是写一个我认为仅限于 () 的“电话”字段,但我可以正常输入文本。所以现在我必须了解如何限制字符。
    猜你喜欢
    • 2022-10-01
    • 2018-11-27
    • 2020-03-20
    • 2019-11-06
    • 1970-01-01
    • 2019-01-15
    • 2014-10-20
    • 2021-08-13
    • 1970-01-01
    相关资源
    最近更新 更多