clay-0.12.2: CSS preprocessor as embedded Haskell.

Safe HaskellNone
LanguageHaskell98

Clay.Size

Contents

Synopsis

Size type.

data Size a #

Instances

Fractional (Size Percentage) # 
Fractional (Size LengthUnit) # 
Num (Size Percentage) # 
Num (Size LengthUnit) # 
Show (Size a) # 

Methods

showsPrec :: Int -> Size a -> ShowS #

show :: Size a -> String #

showList :: [Size a] -> ShowS #

Val (Size a) # 

Methods

value :: Size a -> Value #

Other (Size a) # 

Methods

other :: Value -> Size a #

Normal (Size a) # 

Methods

normal :: Size a #

None (Size a) # 

Methods

none :: Size a #

Inherit (Size a) # 

Methods

inherit :: Size a #

Auto (Size a) # 

Methods

auto :: Size a #

VerticalAlign (Size a) # 

Methods

verticalAlign :: Size a -> Css #

Loc (Size a) # 

Methods

location :: Size a -> Location #

nil :: Size a #

Zero size.

unitless :: Double -> Size a #

Unitless size (as recommended for line-height).

Size constructors.

cm :: Double -> Size LengthUnit #

Size in centimeters.

mm :: Double -> Size LengthUnit #

Size in millimeters.

inches :: Double -> Size LengthUnit #

Size in inches (1in = 2.54 cm).

px :: Double -> Size LengthUnit #

Size in pixels.

pt :: Double -> Size LengthUnit #

Size in points (1pt = 1/72 of 1in).

pc :: Double -> Size LengthUnit #

Size in picas (1pc = 12pt).

em :: Double -> Size LengthUnit #

Size in em's (computed cssDoubleText of the font-size).

ex :: Double -> Size LengthUnit #

SimpleSize in ex'es (x-height of the first avaliable font).

pct :: Double -> Size Percentage #

SimpleSize in percents.

rem :: Double -> Size LengthUnit #

SimpleSize in rem's (em's, but always relative to the root element).

vw :: Double -> Size LengthUnit #

SimpleSize in vw's (1vw = 1% of viewport width).

vh :: Double -> Size LengthUnit #

SimpleSize in vh's (1vh = 1% of viewport height).

vmin :: Double -> Size LengthUnit #

SimpleSize in vmin's (the smaller of vw or vh).

vmax :: Double -> Size LengthUnit #

SimpleSize in vmax's (the larger of vw or vh).

Calculation operators for calc

(@+@) :: Size a -> Size b -> Size (SizeCombination a b) infixl 6 #

Plus operator to combine sizes into calc function

(@-@) :: Size a -> Size b -> Size (SizeCombination a b) infixl 6 #

Minus operator to combine sizes into calc function

(@*) :: Size a -> Double -> Size a infixl 7 #

Reversed times operator to combine sizes into calc function

(*@) :: Double -> Size a -> Size a infixl 7 #

Times operator to combine sizes into calc function

(@/) :: Size a -> Double -> Size a infixl 7 #

Division operator to combine sizes into calc function

Shorthands for properties that can be applied separately to each box side.

sym :: (a -> a -> a -> a -> Css) -> a -> Css #

sym2 :: (a -> a -> a -> a -> Css) -> a -> a -> Css #

sym3 :: (a -> a -> a -> a -> Css) -> a -> a -> a -> Css #

Angle type.

data Angle a #

Instances

Fractional (Angle Turn) # 
Fractional (Angle Grad) # 
Fractional (Angle Rad) # 
Fractional (Angle Deg) # 
Num (Angle Turn) # 
Num (Angle Grad) # 
Num (Angle Rad) # 
Num (Angle Deg) # 
Val (Angle a) # 

Methods

value :: Angle a -> Value #

Other (Angle a) # 

Methods

other :: Value -> Angle a #

Inherit (Angle a) # 

Methods

inherit :: Angle a #

Auto (Angle a) # 

Methods

auto :: Angle a #

Constructing angles.

deg :: Double -> Angle Deg #

Angle in degrees.

rad :: Double -> Angle Rad #

Angle in radians.

grad :: Double -> Angle Grad #

Angle in gradians (also knows as gons or grades).

turn :: Double -> Angle Turn #

Angle in turns.