javascript - 谷歌浏览器中与 Border-Radius 相关的问题

标签 javascript html css

我有以下CSS类

form input[type="text"], form input[type="email"], form input[type="password"], form select, form textarea {
    border: 1px solid #CCCCCC;
    border-radius: 3px 3px 3px 3px;
    padding: 2px 0;
}

以及以下 html 和 Java 脚本:

<input type="text" id="txt1" style="width:300px;" />
    <input type="button" id="btn" value="click here" class="medium required" onclick="return validate();"/>

<script language="javascript">
    function validate()
    {
         if (document.getElementById('txt1').value == '') {

            document.getElementById('txt1').style.borderLeft = "5px solid red";

            return false;
        }


    }
</script>

它在 Mozila 中有效,但在谷歌浏览器中,只要验证触发,输入框就会在 javascript 中完全应用 css,但它还会创建 1px 实体的顶部和底部边框

我该如何解决这个问题? 谢谢。

最佳答案

如果我理解您的问题,顶部和底部边框也会变成红色(在 Chrome 中)。你提到它们是 1px 实心,但那是你最初在你的 css 中设置的,所以我认为真正的问题不是有一个实心 1px 边框,而是它是错误的颜色。所以我假设当您只希望左边框这样做时,它们会从 #CCCCCC 更改为 red

我怀疑 border-radius(或事后渲染)可能是问题所在。如果您在没有 border-radius 的情况下进行实验,问题是否仍然存在(我无法访问 Chrome 来测试自己)?如果这样解决了,那就是问题所在。您可以尝试通过做一些更明确的事情来克服它:

function validate()
    {
         var el = document.getElementById('txt1');
         if (el.value == '') {
            el.style.borderLeft = "5px solid red";
            el.style.borderTopColor = "#CCCCCC";
            el.style.borderBottomColor = "#CCCCCC";

            return false;
        }
    }

编辑:根据 UnLoCo 的信息,无论是在他在这里的第一条评论还是他在您的问题中的评论中,您都可以尝试不使用速记 css,看看是否可以解决问题。因此,而不是你的 css 有:

border: 1px solid #CCCCCC;

您可以在您的基础 css 中尝试这样做,看看是否显式设置每个边框允许 Chrome 在更改左侧边框时不覆盖其他边框:

border-top: 1px solid #CCCCCC;
border-right: 1px solid #CCCCCC;
border-bottom: 1px solid #CCCCCC;
border-left: 1px solid #CCCCCC;

关于javascript - 谷歌浏览器中与 Border-Radius 相关的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8296082/

相关文章:

javascript - 使用 JS Crypto 库计算大文件 MD5 时浏览器卡住(OOM?)

javascript - 尝试在使用 jQuery 提交内容时显示消息框

html - CSS 行尾背景样式

java - Thymeleaf <select> 标签生成选项(数字)

javascript - API 过滤和映射问题

html - 如何删除网站和导航栏周围的空间[CSS] [margin collapsing]

javascript - html页面中的触摸事件和鼠标事件

javascript - 如何使用 javascript 将 html 5 Canvas 居中

html - 如何在 HTML 中发送 PUT/DELETE 请求?

html - 使用 CSS 创建 PDF - 未正确设置正文高度