2013-04-18 3 views
62

У меня есть список на HTMLJQuery изменение стиля HTML элемента

<div id="header" class="row"> 
    <div id="logo" class="col_12">And the winner is<span>n't...</span></div> 
    <div id="navigation" class="row"> 
     <ul id="pirra"> 
      <li><a href="#">Why?</a></li> 
      <li><a href="#">Synopsis</a></li> 
      <li><a href="#">Stills/Photos</a></li> 
      <li><a href="#">Videos/clips</a></li> 
      <li><a href="#">Quotes</a></li> 
      <li><a href="#">Quiz</a></li> 
     </ul> 
    </div> 

он меняет отлично показать горизонтально на изменения CSS

div#navigation ul li { 
     display: inline-block; 
    } 

, но теперь я хочу сделать это с JQuery, я использую :

$(document).ready(function() { 
    console.log('hello'); 
    $('#navigation ul li').css('display': 'inline-block'); 
}); 

но не работает, что у меня есть неправильный стиль моего элемента с jQuery?

благодаря

ответ

137

не используйте:

$('#navigation ul li').css('display': 'inline-block'); 

Вместо этого используйте:

$('#navigation ul li').css('display', 'inline-block'); 

Кроме того, как уже говорилось, если вы хотите сделать несколько изменений CSS сразу , тогда вы добавите фигурные скобки (для обозначения объектов), и это будет выглядеть примерно так (если вы хотите изменить, скажем, «фоновый цвет» и «положение» в дополнение к «отображению»):

$('#navigation ul li').css({'display': 'inline-block', 'background-color': '#fff', 'position': 'relative'}); //The specific CSS changes after the first one, are, of course, just examples. 
+4

или: '$ ('# навигационный уль Li') CSS ({ 'отображение': 'встроенный блок'});.' - Я постоянно смешивать эти два вверх. – Blazemonger

+0

@Blazemonger LOL, я даже не знал, что вы можете это сделать, но теперь, когда вы упомянули об этом, это «имеет» смысл. Спасибо, что расширили мои горизонты. – VoidKing

19
$('#navigation ul li').css('display', 'inline-block'); 

не двоеточие, запятая

10
$('#navigation ul li').css({'display' : 'inline-block'}); 

кажется опечатка там ... синтаксис ошибка :))

+1

отличный человек –

5

вы также можете указать несколько значений стиля, как это

$('#navigation ul li').css({'display': 'inline-block','background-color': '#ff0000', 'color': '#ffffff'}); 
2

Я думаю, вы можете использовать эту треску также: , и вы можете управления ваш класс CSS лучше

<style> 
    .navigationClass{ 
     display: inline-block; 
     padding: 0px 0px 0px 6px; 
     background-color: whitesmoke; 
     border-radius: 2px; 
    } 
</style> 
<div id="header" class="row"> 
    <div id="logo" class="col_12">And the winner is<span>n't...</span></div> 
    <div id="navigation" class="row"> 
     <ul id="pirra"> 
      <li><a href="#">Why?</a></li> 
      <li><a href="#">Synopsis</a></li> 
      <li><a href="#">Stills/Photos</a></li> 
      <li><a href="#">Videos/clips</a></li> 
      <li><a href="#">Quotes</a></li> 
      <li><a href="#">Quiz</a></li> 
     </ul> 
    </div> 
<script> 
    $(document).ready(function() { 
$('#navigation ul li').addClass('navigationClass'); //add class navigationClass to the #navigation . 

}); 
</script> 
Смежные вопросы