Css 激活时输入样式

Css 激活时输入样式,css,forms,border,pseudo-element,Css,Forms,Border,Pseudo Element,我正在为一个网站制作一个表单,希望当字段被文本填充时,字段的边框可以改变颜色。我想我可以简单地添加一个:活动状态,但这似乎不起作用 这是我的密码: HTML 名字: 姓氏: CSS 输入{ 边界:无; 大纲:无!重要; 填充:10px 20px; 宽度:300px; } 输入[类型=文本]{ 颜色:#1A1A; 边框底部:4px实心#1A1A; 字体大小:24px; 字号:900; } 输入[类型=文本]:焦点{ 边框底部:4px实心#178926; } 要实现这一点,您需要添加一些脚本。我

我正在为一个网站制作一个表单,希望当字段被文本填充时,字段的边框可以改变颜色。我想我可以简单地添加一个:活动状态,但这似乎不起作用

这是我的密码:

HTML


名字:
姓氏:
CSS

输入{
边界:无;
大纲:无!重要;
填充:10px 20px;
宽度:300px;
}
输入[类型=文本]{
颜色:#1A1A;
边框底部:4px实心#1A1A;
字体大小:24px;
字号:900;
}
输入[类型=文本]:焦点{
边框底部:4px实心#178926;
}

要实现这一点,您需要添加一些脚本。我已经给出了下面的脚本,通过使用它,您将实现您的目标。 在脚本中添加以下代码:

    document.querySelectorAll('input').forEach((input) => {
        input.addEventListener('blur', function() {
            this.classList.toggle('green', this.value.length > 0);
        });
    });
.green {
    border: 2px solid blue;
}
在CSS中添加以下代码:

    document.querySelectorAll('input').forEach((input) => {
        input.addEventListener('blur', function() {
            this.classList.toggle('green', this.value.length > 0);
        });
    });
.green {
    border: 2px solid blue;
}
通过使用此CSS属性,可以操纵边框属性。
这段代码对所有输入元素都很有用。

在这段旧代码中,我猜线程包含了一些信息:。。只需使用
input:not(:显示的占位符)
为输入设置文本样式。