Чтобы не изобретать велосипед, я создаю форму с помощью помощника по форме CakePHP, который создает следующую разметку:
<div class="input select"><label for="ReportFruit">Fruit</label>
<input type="hidden" name="data[Report][Fruit]" value="" id="ReportFruit" />
<div class="checkbox"><input type="checkbox" name="data[Report][Fruit][]" value="0" id="ReportFruit0" /><label for="ReportFruit0">Banana</label></div>
<div class="checkbox"><input type="checkbox" name="data[Report][Fruit][]" value="1" id="ReportFruit1" /><label for="ReportFruit1">Apple</label></div>
<div class="checkbox"><input type="checkbox" name="data[Report][Fruit][]" value="2" id="ReportFruit2" /><label for="ReportFruit2">Pear</label>
...
</div>
</div>
, который генерирует несколько флажков в этом формате:
[] Banana
[] Apple
[] Pear
[] ...
Я бы хотел отформатировать их так, чтобы они отображались так:
(в идеале я мог бы установить количество опций в строке, но если нет, то это тоже нормально)
[] Banana [] Apple [] Pear
[] Mango [] Lemon [] ...
Могу ли я выполнить это только с помощью CSS или мне придется манипулировать DOM с помощью JS (или изменить разметку с помощью PHP, прежде чем я ее выведу)?