Add PostCSS sizing utilities

This commit is contained in:
Adam Wathan 2017-08-27 17:29:27 -04:00
parent 63d31def45
commit e9f2e98726
7 changed files with 1008 additions and 1 deletions

940
dist/tailwind.css vendored
View File

@ -1068,6 +1068,194 @@ body {
-ms-overflow-style: -ms-autohiding-scrollbar;
}
.w-1 {
width: 0.25rem;
}
.w-2 {
width: 0.5rem;
}
.w-3 {
width: 0.75rem;
}
.w-4 {
width: 1rem;
}
.w-6 {
width: 1.5rem;
}
.w-8 {
width: 2rem;
}
.w-10 {
width: 2.5rem;
}
.w-12 {
width: 3rem;
}
.w-16 {
width: 4rem;
}
.w-24 {
width: 6rem;
}
.w-32 {
width: 8rem;
}
.w-40 {
width: 10rem;
}
.w-48 {
width: 12rem;
}
.w-64 {
width: 16rem;
}
.w-96 {
width: 24rem;
}
.w-128 {
width: 32rem;
}
.w-full {
width: 100%;
}
.w-1\/2 {
width: 50%;
}
.w-1\/3 {
width: 33.33333%;
}
.w-2\/3 {
width: 66.66667%;
}
.w-1\/4 {
width: 25%;
}
.w-3\/4 {
width: 75%;
}
.w-1\/5 {
width: 20%;
}
.w-2\/5 {
width: 40%;
}
.w-3\/5 {
width: 60%;
}
.w-4\/5 {
width: 80%;
}
.w-1\/6 {
width: 16.66667%;
}
.w-5\/6 {
width: 83.33333%;
}
.w-screen {
width: 100vw;
}
.h-1 {
height: 0.25rem;
}
.h-2 {
height: 0.5rem;
}
.h-3 {
height: 0.75rem;
}
.h-4 {
height: 1rem;
}
.h-6 {
height: 1.5rem;
}
.h-8 {
height: 2rem;
}
.h-10 {
height: 2.5rem;
}
.h-12 {
height: 3rem;
}
.h-16 {
height: 4rem;
}
.h-24 {
height: 6rem;
}
.h-32 {
height: 8rem;
}
.h-40 {
height: 10rem;
}
.h-48 {
height: 12rem;
}
.h-64 {
height: 16rem;
}
.h-96 {
height: 24rem;
}
.h-128 {
height: 32rem;
}
.h-full {
height: 100%;
}
.h-screen {
height: 100vh;
}
.constrain-xs {
max-width: 20rem;
}
@ -2318,6 +2506,194 @@ body {
-ms-overflow-style: -ms-autohiding-scrollbar;
}
.sm\:w-1 {
width: 0.25rem;
}
.sm\:w-2 {
width: 0.5rem;
}
.sm\:w-3 {
width: 0.75rem;
}
.sm\:w-4 {
width: 1rem;
}
.sm\:w-6 {
width: 1.5rem;
}
.sm\:w-8 {
width: 2rem;
}
.sm\:w-10 {
width: 2.5rem;
}
.sm\:w-12 {
width: 3rem;
}
.sm\:w-16 {
width: 4rem;
}
.sm\:w-24 {
width: 6rem;
}
.sm\:w-32 {
width: 8rem;
}
.sm\:w-40 {
width: 10rem;
}
.sm\:w-48 {
width: 12rem;
}
.sm\:w-64 {
width: 16rem;
}
.sm\:w-96 {
width: 24rem;
}
.sm\:w-128 {
width: 32rem;
}
.sm\:w-full {
width: 100%;
}
.sm\:w-1\/2 {
width: 50%;
}
.sm\:w-1\/3 {
width: 33.33333%;
}
.sm\:w-2\/3 {
width: 66.66667%;
}
.sm\:w-1\/4 {
width: 25%;
}
.sm\:w-3\/4 {
width: 75%;
}
.sm\:w-1\/5 {
width: 20%;
}
.sm\:w-2\/5 {
width: 40%;
}
.sm\:w-3\/5 {
width: 60%;
}
.sm\:w-4\/5 {
width: 80%;
}
.sm\:w-1\/6 {
width: 16.66667%;
}
.sm\:w-5\/6 {
width: 83.33333%;
}
.sm\:w-screen {
width: 100vw;
}
.sm\:h-1 {
height: 0.25rem;
}
.sm\:h-2 {
height: 0.5rem;
}
.sm\:h-3 {
height: 0.75rem;
}
.sm\:h-4 {
height: 1rem;
}
.sm\:h-6 {
height: 1.5rem;
}
.sm\:h-8 {
height: 2rem;
}
.sm\:h-10 {
height: 2.5rem;
}
.sm\:h-12 {
height: 3rem;
}
.sm\:h-16 {
height: 4rem;
}
.sm\:h-24 {
height: 6rem;
}
.sm\:h-32 {
height: 8rem;
}
.sm\:h-40 {
height: 10rem;
}
.sm\:h-48 {
height: 12rem;
}
.sm\:h-64 {
height: 16rem;
}
.sm\:h-96 {
height: 24rem;
}
.sm\:h-128 {
height: 32rem;
}
.sm\:h-full {
height: 100%;
}
.sm\:h-screen {
height: 100vh;
}
.sm\:constrain-xs {
max-width: 20rem;
}
@ -3569,6 +3945,194 @@ body {
-ms-overflow-style: -ms-autohiding-scrollbar;
}
.md\:w-1 {
width: 0.25rem;
}
.md\:w-2 {
width: 0.5rem;
}
.md\:w-3 {
width: 0.75rem;
}
.md\:w-4 {
width: 1rem;
}
.md\:w-6 {
width: 1.5rem;
}
.md\:w-8 {
width: 2rem;
}
.md\:w-10 {
width: 2.5rem;
}
.md\:w-12 {
width: 3rem;
}
.md\:w-16 {
width: 4rem;
}
.md\:w-24 {
width: 6rem;
}
.md\:w-32 {
width: 8rem;
}
.md\:w-40 {
width: 10rem;
}
.md\:w-48 {
width: 12rem;
}
.md\:w-64 {
width: 16rem;
}
.md\:w-96 {
width: 24rem;
}
.md\:w-128 {
width: 32rem;
}
.md\:w-full {
width: 100%;
}
.md\:w-1\/2 {
width: 50%;
}
.md\:w-1\/3 {
width: 33.33333%;
}
.md\:w-2\/3 {
width: 66.66667%;
}
.md\:w-1\/4 {
width: 25%;
}
.md\:w-3\/4 {
width: 75%;
}
.md\:w-1\/5 {
width: 20%;
}
.md\:w-2\/5 {
width: 40%;
}
.md\:w-3\/5 {
width: 60%;
}
.md\:w-4\/5 {
width: 80%;
}
.md\:w-1\/6 {
width: 16.66667%;
}
.md\:w-5\/6 {
width: 83.33333%;
}
.md\:w-screen {
width: 100vw;
}
.md\:h-1 {
height: 0.25rem;
}
.md\:h-2 {
height: 0.5rem;
}
.md\:h-3 {
height: 0.75rem;
}
.md\:h-4 {
height: 1rem;
}
.md\:h-6 {
height: 1.5rem;
}
.md\:h-8 {
height: 2rem;
}
.md\:h-10 {
height: 2.5rem;
}
.md\:h-12 {
height: 3rem;
}
.md\:h-16 {
height: 4rem;
}
.md\:h-24 {
height: 6rem;
}
.md\:h-32 {
height: 8rem;
}
.md\:h-40 {
height: 10rem;
}
.md\:h-48 {
height: 12rem;
}
.md\:h-64 {
height: 16rem;
}
.md\:h-96 {
height: 24rem;
}
.md\:h-128 {
height: 32rem;
}
.md\:h-full {
height: 100%;
}
.md\:h-screen {
height: 100vh;
}
.md\:constrain-xs {
max-width: 20rem;
}
@ -4820,6 +5384,194 @@ body {
-ms-overflow-style: -ms-autohiding-scrollbar;
}
.lg\:w-1 {
width: 0.25rem;
}
.lg\:w-2 {
width: 0.5rem;
}
.lg\:w-3 {
width: 0.75rem;
}
.lg\:w-4 {
width: 1rem;
}
.lg\:w-6 {
width: 1.5rem;
}
.lg\:w-8 {
width: 2rem;
}
.lg\:w-10 {
width: 2.5rem;
}
.lg\:w-12 {
width: 3rem;
}
.lg\:w-16 {
width: 4rem;
}
.lg\:w-24 {
width: 6rem;
}
.lg\:w-32 {
width: 8rem;
}
.lg\:w-40 {
width: 10rem;
}
.lg\:w-48 {
width: 12rem;
}
.lg\:w-64 {
width: 16rem;
}
.lg\:w-96 {
width: 24rem;
}
.lg\:w-128 {
width: 32rem;
}
.lg\:w-full {
width: 100%;
}
.lg\:w-1\/2 {
width: 50%;
}
.lg\:w-1\/3 {
width: 33.33333%;
}
.lg\:w-2\/3 {
width: 66.66667%;
}
.lg\:w-1\/4 {
width: 25%;
}
.lg\:w-3\/4 {
width: 75%;
}
.lg\:w-1\/5 {
width: 20%;
}
.lg\:w-2\/5 {
width: 40%;
}
.lg\:w-3\/5 {
width: 60%;
}
.lg\:w-4\/5 {
width: 80%;
}
.lg\:w-1\/6 {
width: 16.66667%;
}
.lg\:w-5\/6 {
width: 83.33333%;
}
.lg\:w-screen {
width: 100vw;
}
.lg\:h-1 {
height: 0.25rem;
}
.lg\:h-2 {
height: 0.5rem;
}
.lg\:h-3 {
height: 0.75rem;
}
.lg\:h-4 {
height: 1rem;
}
.lg\:h-6 {
height: 1.5rem;
}
.lg\:h-8 {
height: 2rem;
}
.lg\:h-10 {
height: 2.5rem;
}
.lg\:h-12 {
height: 3rem;
}
.lg\:h-16 {
height: 4rem;
}
.lg\:h-24 {
height: 6rem;
}
.lg\:h-32 {
height: 8rem;
}
.lg\:h-40 {
height: 10rem;
}
.lg\:h-48 {
height: 12rem;
}
.lg\:h-64 {
height: 16rem;
}
.lg\:h-96 {
height: 24rem;
}
.lg\:h-128 {
height: 32rem;
}
.lg\:h-full {
height: 100%;
}
.lg\:h-screen {
height: 100vh;
}
.lg\:constrain-xs {
max-width: 20rem;
}
@ -6071,6 +6823,194 @@ body {
-ms-overflow-style: -ms-autohiding-scrollbar;
}
.xl\:w-1 {
width: 0.25rem;
}
.xl\:w-2 {
width: 0.5rem;
}
.xl\:w-3 {
width: 0.75rem;
}
.xl\:w-4 {
width: 1rem;
}
.xl\:w-6 {
width: 1.5rem;
}
.xl\:w-8 {
width: 2rem;
}
.xl\:w-10 {
width: 2.5rem;
}
.xl\:w-12 {
width: 3rem;
}
.xl\:w-16 {
width: 4rem;
}
.xl\:w-24 {
width: 6rem;
}
.xl\:w-32 {
width: 8rem;
}
.xl\:w-40 {
width: 10rem;
}
.xl\:w-48 {
width: 12rem;
}
.xl\:w-64 {
width: 16rem;
}
.xl\:w-96 {
width: 24rem;
}
.xl\:w-128 {
width: 32rem;
}
.xl\:w-full {
width: 100%;
}
.xl\:w-1\/2 {
width: 50%;
}
.xl\:w-1\/3 {
width: 33.33333%;
}
.xl\:w-2\/3 {
width: 66.66667%;
}
.xl\:w-1\/4 {
width: 25%;
}
.xl\:w-3\/4 {
width: 75%;
}
.xl\:w-1\/5 {
width: 20%;
}
.xl\:w-2\/5 {
width: 40%;
}
.xl\:w-3\/5 {
width: 60%;
}
.xl\:w-4\/5 {
width: 80%;
}
.xl\:w-1\/6 {
width: 16.66667%;
}
.xl\:w-5\/6 {
width: 83.33333%;
}
.xl\:w-screen {
width: 100vw;
}
.xl\:h-1 {
height: 0.25rem;
}
.xl\:h-2 {
height: 0.5rem;
}
.xl\:h-3 {
height: 0.75rem;
}
.xl\:h-4 {
height: 1rem;
}
.xl\:h-6 {
height: 1.5rem;
}
.xl\:h-8 {
height: 2rem;
}
.xl\:h-10 {
height: 2.5rem;
}
.xl\:h-12 {
height: 3rem;
}
.xl\:h-16 {
height: 4rem;
}
.xl\:h-24 {
height: 6rem;
}
.xl\:h-32 {
height: 8rem;
}
.xl\:h-40 {
height: 10rem;
}
.xl\:h-48 {
height: 12rem;
}
.xl\:h-64 {
height: 16rem;
}
.xl\:h-96 {
height: 24rem;
}
.xl\:h-128 {
height: 32rem;
}
.xl\:h-full {
height: 100%;
}
.xl\:h-screen {
height: 100vh;
}
.xl\:constrain-xs {
max-width: 20rem;
}

File diff suppressed because one or more lines are too long

View File

@ -256,6 +256,44 @@ export default {
'pink-lightest',
]
},
sizing: {
common: {
'1': '0.25rem',
'2': '0.5rem',
'3': '0.75rem',
'4': '1rem',
'6': '1.5rem',
'8': '2rem',
'10': '2.5rem',
'12': '3rem',
'16': '4rem',
'24': '6rem',
'32': '8rem',
'40': '10rem',
'48': '12rem',
'64': '16rem',
'96': '24rem',
'128': '32rem',
'full': '100%',
},
width: {
'1\\/2': '50%',
'1\\/3': 'calc(100% / 3)',
'2\\/3': 'calc(100% / 3 * 2)',
'1\\/4': '25%',
'3\\/4': '75%',
'1\\/5': '20%',
'2\\/5': '40%',
'3\\/5': '60%',
'4\\/5': '80%',
'1\\/6': 'calc(100% / 6)',
'5\\/6': 'calc(100% / 6 * 5)',
'screen': '100vw'
},
height: {
'screen': '100vh'
}
},
constrain: {
'xs': '20rem',
'sm': '30rem',

27
src/generators/sizing.js Normal file
View File

@ -0,0 +1,27 @@
import _ from 'lodash'
import defineClass from '../util/defineClass'
function defineWidths(widths) {
return _.map(widths, (size, modifer) => {
return defineClass(`w-${modifer}`, {
'width': `${size}`,
})
})
}
function defineHeights(heights) {
return _.map(heights, (size, modifer) => {
return defineClass(`h-${modifer}`, {
'height': `${size}`,
})
})
}
export default function ({ sizing }) {
const widths = _.merge({}, sizing.common, sizing.width)
const heights = _.merge({}, sizing.common, sizing.height)
return _.flatten([
defineWidths(widths),
defineHeights(heights),
])
}

View File

@ -19,6 +19,7 @@ import rounded from '../generators/rounded'
import display from '../generators/display'
import position from '../generators/position'
import overflow from '../generators/overflow'
import sizing from '../generators/sizing'
import constrain from '../generators/constrain'
import shadows from '../generators/shadows'
import flex from '../generators/flex'
@ -47,6 +48,7 @@ export default function(options) {
display(options),
position(options),
overflow(options),
sizing(options),
constrain(options),
shadows(options),
flex(options),