1) Идём в Википедию и читаем про матрицу поворота. 2) Ищем в интернетах формулу для перевода градусов в радианы. 3) Например при помощи JS в консоли считаем какой будет синус и косинус нужного угла: Math.sin(-45 * Math.PI / 180); // -0.7071067811865475Math.cos(-45 * Math.PI / 180); // 0.7071067811865476 4) Наша матрица поворота будет выглядеть так: |cos, -sin| | 0.7071067811865476, 0.7071067811865475 || | = | ||sin, cos| | -0.7071067811865475, 0.7071067811865476 | 5) Сочиняем CSS: .rotate-45 { -webkit-transform: matrix(0.7071067811865476, -0.7071067811865475, 0.7071067811865475, 0.7071067811865476, 0, 0); -moz-transform: matrix(0.7071067811865476, -0.7071067811865475, 0.7071067811865475, 0.7071067811865476, 0, 0); -ms-transform: matrix(0.7071067811865476, -0.7071067811865475, 0.7071067811865475, 0.7071067811865476, 0, 0); -o-transform: matrix(0.7071067811865476, -0.7071067811865475, 0.7071067811865475, 0.7071067811865476, 0, 0); transform: matrix(0.7071067811865476, -0.7071067811865475, 0.7071067811865475, 0.7071067811865476, 0, 0); /* для старых ИЕ */ -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.7071067811865476, M12=0.7071067811865475, M21=-0.7071067811865475, M22=0.7071067811865476,sizingMethod='auto expand')"; filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.7071067811865476, M12=0.7071067811865475, M21=-0.7071067811865475, M22=0.7071067811865476,sizingMethod='auto expand');}6) Проверяем расчёты