есть такое свойство в СSS когда надо чтобы размер блока учитывал бордер:
.block{ -moz-box-sizing: border-box; box-sizing: border-box; }
.block{ -moz-box-sizing: border-box; box-sizing: border-box; }
.block{ /* к-во колонок */ column-count: 3; -moz-column-count: 3; -webkit-column-count: 3; /* отступы между колонок */ column-gap: 10px; -moz-column-gap: 10px; -webkit-column-gap: 10px; /* ширина колонок */ column-width: 200px; -moz-column-width: 200px; -webkit-column-width: 200px; /* Разделительная линия между колонками */ column-rule: 1px solid black; -moz-column-rule: 1px solid black; -webkit-column-rule: 1px solid black; }
.flip-horizontal { -moz-transform: scaleX(-1); -webkit-transform: scaleX(-1); -o-transform: scaleX(-1); transform: scaleX(-1); -ms-filter: fliph; filter: fliph; } .flip-vertical { -moz-transform: scaleY(-1); -webkit-transform: scaleY(-1); -o-transform: scaleY(-1); transform: scaleY(-1); -ms-filter: flipv; filter: flipv; }
div{ transform:rotate(90deg); -ms-transform:rotate(90deg); -moz-transform:rotate(90deg); -webkit-transform:rotate(90deg); -o-transform:rotate(90deg); }
П.С. не всегда надо что бы все трансформации проходили плавно, иногда луче применять эти стили к конкретным блокам.*{ -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; -ms-transition: all 0.3s ease; transition: all 0.3s ease; }
.block{ width: 70%; } @media only screen and (min-width: 240px) and (max-width: 980px) { .block{ width: 95%; } }
ul.column{ width: 100%; padding: 0; margin: 10px 0; list-style: none; } ul.column li { float: left; width: 200px; /* ширина колонки по умолчанию */ padding: 0; margin: 5px 0; display: inline; } .block { height: 355px; font-size: 1em; margin-right: 10px; /* отступ между колонками */ padding: 20px; background: #e3e1d5; }
П.С. лень было набирать поэтому скопировал части кода тутfunction smartColumns() { //функция, подсчитывающая ширину колонок //сброс ширины строки до 100% после изменения размера экрана $("ul.column").css({ 'width' : "100%"}); var colWrap = $("ul.column").width(); //определяем ширину строки var colNum = Math.floor(colWrap / 200); //определяем, сколько столбцов в 200px вместится в строку и округляем число до целого var colFixed = Math.floor(colWrap / colNum); //ширину строки делим на количество столбцов, округляем до целого числа, в результате получаем точную скорректированную ширину колонки $("ul.column").css({ 'width' : colWrap}); //ставим точную ширину строки в пикселях вместо использования % - это предотвратит возможные баги в разных браузерах при различных разрешениях экрана $("ul.column li").css({ 'width' : colFixed}); //ставим точную ширину измененным столбцам } smartColumns(); //запускаем функцию после загрузки страницы $(window).resize(function () { //запускаем функцию после каждого изменения размера экрана smartColumns(); });