Domanda

i want to change below :before css pseudo element's top value via javascript or jQuery dynamically ... how can i do it?

#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;
}
È stato utile?

Soluzione

As per my knowledge you can not modify pseudo style directly, but you can insert the CSS to the head portion of the DOM by this way,

jQuery

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

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

});

Check this Demo jsFiddle

Altri suggerimenti

With jQuery you need to append style in the head:

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

see more

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top