2013-04-15 4 views
1

У меня возникли проблемы, пытаясь выяснить, как изменить размер контрольной группы в JQuery Mobile 1.3.0ширина Изменение размера контрольной группы JQuery Mobile

Я не знаю, правильный подход, прямо сейчас я с изменением размера .ui-BTN класс, например, так:

#test_1 .ui-btn { 
    width: 200%; 
} 

Но это не изменение размера кнопки, как я ожидаю, правая кнопки пересекаться с левой кнопки, если я делаю их больше, или они не изменить положение, когда я сделать их меньше ,

Это мой HTML, это контрольная группа с 5 блоков, 4 из них являются колонны и одна является Solo группа в середине:

<fieldset class="ui-grid-a" data-role="controlgroup" data-mini="true" id="test_1"> 
     <div class="ui-block-a"> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
     </div> 
     <div class="ui-block-b"> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
     </div> 
     <div class="ui-grid-solo"> 
      <label>AaaaaaaaaaaAaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
     </div> 
     <div class="ui-block-a"> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
     </div> 
     <div class="ui-block-b"> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
      <label>Aaaaaaaaaaa 
       <input type="radio" name="accion" value="1"> 
      </label> 
     </div> 
    </fieldset> 

Весь код в jsFiddle я установил: http://jsfiddle.net/4zMqn/1/

Заранее благодарим!

+1

# тест_1 { ширина: 70%! Важное; } – Gajotres

+0

Это работает. Благодарю. – Deses

+0

Могу ли я разместить его в качестве ответа? Я также опишу, почему эта линия работает. – Gajotres

ответ

1

Решение

Чтобы исправить вашу проблему использовать этот CSS:

#test_1 { 
    width: 70% !important; 
} 

Потому что fieldset уже определил ширину, нам нужно переопределить его нашим значением, и это можно сделать с помощью ! Important.

Рабочий jsFiddle пример: http://jsfiddle.net/Gajotres/SuqRY/

Подробнее

Если вы хотите узнать, как сделать этот вид изменения самостоятельно, вы должны проверить это article, она научит вас, как сделать это сам.

+0

У меня есть еще один вопрос: когда вы устанавливаете ширину, набор полей намного больше, чем фактическое представление на экране (смотрите его с помощью firebug или что-то еще), тем самым вынуждая задавать странные отрицательные поля и вставляя отзывчивость содержимого. Вы знаете, как это исправить? – Deses

+1

Это должно сделать это: http://jsfiddle.net/Gajotres/SuqRY/. – Gajotres

+1

Сладкий! Спасибо! – Deses

0

Один из способов сделать это, чтобы переопределить CSS-стиль по умолчанию для размера кнопки и добавить в свой собственный класс CSS

.ui-mini .ui-btn-inner { 
    // resize code 
} 
+0

Нравится: '.ui-mini.ui-mini-less .ui-btn-inner { ширина: 50%; } '? Похоже, это не имеет никакого эффекта. – Deses

+0

ширина: 50%! Important; использовать таким образом. – Amit

+0

У меня есть обновленный код, который вы можете попробовать. – Amit