2016-08-29 50 views
1

我在网页上使用contenteditable。这工作正常,但浏览器在激活时在可编辑部分周围放置了一个丑陋的边框。另外,当焦点被改变为页面上的另一个元素时,这些边界中的一些不会被擦除。我怎样才能让contenteditable文字框消失?

Safari创建淡蓝色边框,Firefox使用细黑线,所以在这里有一些浏览器解释工作。

我试图明确地将可编辑节的边框设置为无,并使CSS属性变得重要,但这并不会改变浏览器的行为。

我的问题:

有没有办法来影响否决border属性,当用户点击它里面开始编辑页面元素的造型?

回答

0

尝试添加大纲:在CSS中没有为表单元素删除边框高亮属性大纲:没有在CSS中的输入元素。

例如:

input:focus{ 
     outline:none; 
    } 

    textarea:focus{ 
     outline:none; 
    } 

    select:focus{ 
     outline:none; 
    } 

对于工作代码找到Jsfiddle link

1

添加这种风格(JsFiddle):

[contenteditable="true"]:active, [contenteditable="true"]:focus 
{ 
    border:none; 
    outline:none; 
} 

让所有CONTENTEDITABLE元素不使用边框和轮廓当focuesed时。

编辑:我发现了一个很好的tutorial

+0

感谢。这有帮助。我不知道'大纲'属性。现在我知道了。 – 4everJang

+0

@ 4everJang你好,随时接受答案,如果解决了你的问题:) – MrPk

+1

我写了“优秀教程”。赞成它只是因为...我欣赏它。谢谢 – paceaux

0
[contenteditable="true"]:active, 
[contenteditable="true"]:focus 
{ 
border:none !important; 
outline:none !important; 
} 
+0

虽然这可能在理论上回答这个问题,[这将是更可取的](/ meta.stackoverflow.com/q/8259)在这里包括答案的基本部分,并在代码中提供参考,为什么这是一个办法。谢谢! –

+0

请编辑更多信息。仅限代码和“尝试这个”的答案是不鼓励的,因为它们不包含可搜索的内容,也不解释为什么有人应该“尝试这个”。我们在这里努力成为知识的资源。 –

+0

这个答案出现在低质量的审查队列中,大概是因为你没有提供任何代码的解释。如果此代码回答此问题,请考虑添加一些文字,说明答案中的代码。这样,你就更有可能获得更多赞扬 - 并帮助提问者学习新东西。 – lmo