2016-05-25 3 views
0

У меня есть окно просмотра определенного размера. В настоящее время я показываю только одно изображение, которое нарисовано на холсте html5. Но теперь мне нужно показать несколько холстов, которые могут варьироваться от 1 до 6. Требование состоит в том, чтобы изменять размеры холстов на основе количества холстов, чтобы он вписывался в родительский div.Изменение размера холста на основе количества холстов от родительского div

Например: Единственный холст должен принимать 100% родительского div, 2 холста 50-50%. Таким образом, для 6 холстов это будет 2 ряда с 3-мя холстами.

Кроме того, пользователь может переключать отображение/скрытие определенного холста, поэтому им придется переупорядочить.

Как я могу это сделать? Я использую angularjs, javascript и html5 css3.

+0

Покажите, что вы попробовали! –

ответ

0

Ознакомьтесь с CSS Flexbox, который может автоматически настраивать и автоматизировать размещение нескольких холстов внутри контейнера div.

Flexbox проста в использовании после небольшой кривой обучения.

Объявите ваш DIV в качестве контейнера Flexbox:

#theDiv{ display: flex; } 

А потом скажите Flexbox, как вы хотите отображаться холст-элементы:

#theDiv{ flex-flow: row wrap; } 

Вы не подробный, как вы хотите, холсты в увеличивать/уменьшаться, когда размер контейнера изменяется или когда пользователь скрывает/показывает холсты, но у Flexbox есть параметры увеличения/сжатия, которые можно применить ко всем элементам холста и даже к конкретным холстам.

+0

Я стараюсь избегать любых сторонних библиотек или плагинов. просто используя css и javascript/angularjs, я хотел бы достичь этой функциональности. И да, я хочу, чтобы холсты растут/сжимаются на основе скрытия/шоу холста. Контейнер div остается того же размера. –

+0

Flexbox - это чистый CSS! :-)) – markE

Смежные вопросы