2016-08-18 118 views
-3

我有以下的html:是dinamically通过jQuery创建悬停在类工作不

<div class="box"> 
    <div class="div box_position" id="something" style="some style" onlick="somefunction"</div> 
</div> 

这些标签。

现在我有以下的CSS:

.box :hover { 
    background-color:red; 
} 

.div box_position :hover{ 
    border-color:black; 
    font-size:20px 
} 

当我悬停在它工作的父母,但是当我悬停内容(DIV框位置),它不会改变边框的颜色或字体,我错过了什么?

+2

修复你的div!修复你的CSS!在问问题之前!你正在让每个人的答案没有意义,因为你不断改变HTML和CSS。 –

回答

0

有几件事情...

  • 1与=标志错误地定义空间。

您需要定义它像这样:

border-color: black; 
  • 2你的第二个风格定义为box_position类缺少.。此外,我会将其更改为box-position以符合大多数命名约定。

您需要定义像这样的风格:

.div .box-position:hover { 
    border-color: black; 
} 
  • 3恕我直言,你并不真的需要定义一个名为div类,所以你可以从样式定义中删除此。你可以只声明您的选择为“一个div里面的东西”,:任何在一个div;“叫box-position

像这样

div .box-position:hover { 
    border-color: black; 
} 

这是说。”并拥有一流的box-position - 应用下列样式”

  • 4你内心div缺少一个右尖括号(>

应该是这样的:

<div class="div box_position" id="something" style="some style" onlick="somefunction"> 
Some content 
</div> 

此外,请确保您正在为您的边框定义宽度,除非这是在其他地方声明的。

您可以只用一行定义边框的样式。像这样:

div .box-position:hover { 
    border: 1px solid black; // Give me a 1px border that has a black, solid line 
} 

最后。我会考虑你的选择器,并看看http://www.w3schools.com/cssref/css_selectors.asp以熟悉选择器意味着什么以及如何使用它。

当你在将来定义你的风格时,这会有很大的帮助。

希望这会有所帮助!

+0

正确的答案,谢谢,第3点是关键,我复制的其他东西粘贴html像个白痴, – user3442470

1

是的,你有一个错字 border-color=black;

:代替=

+0

谢谢,我改了它,但问题仍然存在 – user3442470

1

应该.box_position及用途:(不等于) Assumining你没有边界

.div .box_position :hover{ 
    border-style: solid; 
    border-color: black; 
    border-width: 1px; 
} 

并且还删除不当内联样式..(如果内联失败,样式不起作用)适当的onclick函数调用

<div class="box"> 
    <div class="div box_position" id="something" onlick="somefunction()"</div> 
</div> 
+0

好吧,我改了它,但它仍然不起作用 – user3442470

+0

我已更新答案 – scaisEdge

1

两件事情:

  1. 内格无法正常关闭(丢失>)。
  2. CSS中的错误:应该是.div.box_position而不是.div box_position

直播代码:http://codepen.io/anon/pen/ZOkbNY

编辑:

此外,你必须指定边界(在附加codepen完成)的宽度和类型。

1

你不应该把

border-color之间
.box :hover (incorrect) 
.box:hover (correct)