如何在javascript中更改css伪元素?

时间:2014-04-10 04:06:59

标签: javascript jquery html css pseudo-element

我想通过javascript或jQuery动态更改:before css伪元素top值以下...我该怎么做?

#buble{

height:70px;
width:980px;
background-color:#bce5a5;
display:none;
-moz-border-radius:5px;
-webkit-border-radius:5px;
border-radius:5px;
box-shadow:0px 0px 4px #dadada;
text-indent:35px;
color:#4a8f44;
font-weight:bold;
font-size:14pt;

       }

#buble:before{

content:"";           
display:block;
position:absolute;
top:77px; /* value = - border-top-width - border-bottom-width */
left:555px; /* controls horizontal position */
border-width:11px 7px 0px; /* vary these values to change the angle of the vertex */
border-style:solid;
border-color:#bce5a5 transparent;
width:0;
height:0;
}

2 个答案:

答案 0 :(得分:1)

据我所知,您不能直接修改伪样式,但可以将 CSS 插入 DOM 头部中这样,

的jQuery

$( "div" ).click(function() {

  $('<style>p:before{top:10px}</style>').appendTo('head');

});

检查此 Demo jsFiddle

答案 1 :(得分:0)

使用jQuery,您需要在头部添加样式:

$('<style>#buble:before{top: 50px}</style>').appendTo('head');

see more