clay-0.15.0: CSS preprocessor as embedded Haskell.
Safe HaskellNone
LanguageHaskell2010

Clay.Stylesheet

Synopsis

Documentation

newtype MediaType #

Constructors

MediaType Value 

Instances

Instances details
Show MediaType # 
Instance details

Defined in Clay.Stylesheet

All MediaType # 
Instance details

Defined in Clay.Stylesheet

Methods

all :: MediaType #

Other MediaType # 
Instance details

Defined in Clay.Stylesheet

Methods

other :: Value -> MediaType #

Val MediaType # 
Instance details

Defined in Clay.Stylesheet

Methods

value :: MediaType -> Value #

data NotOrOnly #

Constructors

Not 
Only 

Instances

Instances details
Show NotOrOnly # 
Instance details

Defined in Clay.Stylesheet

data MediaQuery #

Instances

Instances details
Show MediaQuery # 
Instance details

Defined in Clay.Stylesheet

data Feature #

Constructors

Feature Text (Maybe Value) 

Instances

Instances details
Show Feature # 
Instance details

Defined in Clay.Stylesheet

newtype CommentText #

Constructors

CommentText 

Fields

Instances

Instances details
IsString CommentText # 
Instance details

Defined in Clay.Stylesheet

Monoid CommentText # 
Instance details

Defined in Clay.Stylesheet

Semigroup CommentText # 
Instance details

Defined in Clay.Stylesheet

Show CommentText # 
Instance details

Defined in Clay.Stylesheet

data Modifier #

Instances

Instances details
Show Modifier # 
Instance details

Defined in Clay.Stylesheet

data App #

Instances

Instances details
Show App # 
Instance details

Defined in Clay.Stylesheet

Methods

showsPrec :: Int -> App -> ShowS #

show :: App -> String #

showList :: [App] -> ShowS #

data Keyframes #

Constructors

Keyframes Text [(Number, [Rule])] 

Instances

Instances details
Show Keyframes # 
Instance details

Defined in Clay.Stylesheet

data Rule #

Instances

Instances details
Show Rule # 
Instance details

Defined in Clay.Stylesheet

Methods

showsPrec :: Int -> Rule -> ShowS #

show :: Rule -> String #

showList :: [Rule] -> ShowS #

newtype StyleM a #

Constructors

S (Writer [Rule] a) 

Instances

Instances details
Applicative StyleM # 
Instance details

Defined in Clay.Stylesheet

Methods

pure :: a -> StyleM a #

(<*>) :: StyleM (a -> b) -> StyleM a -> StyleM b #

liftA2 :: (a -> b -> c) -> StyleM a -> StyleM b -> StyleM c #

(*>) :: StyleM a -> StyleM b -> StyleM b #

(<*) :: StyleM a -> StyleM b -> StyleM a #

Functor StyleM # 
Instance details

Defined in Clay.Stylesheet

Methods

fmap :: (a -> b) -> StyleM a -> StyleM b #

(<$) :: a -> StyleM b -> StyleM a #

Monad StyleM # 
Instance details

Defined in Clay.Stylesheet

Methods

(>>=) :: StyleM a -> (a -> StyleM b) -> StyleM b #

(>>) :: StyleM a -> StyleM b -> StyleM b #

return :: a -> StyleM a #

Monoid Css # 
Instance details

Defined in Clay.Stylesheet

Methods

mempty :: Css #

mappend :: Css -> Css -> Css #

mconcat :: [Css] -> Css #

Semigroup Css # 
Instance details

Defined in Clay.Stylesheet

Methods

(<>) :: Css -> Css -> Css #

sconcat :: NonEmpty Css -> Css #

stimes :: Integral b => b -> Css -> Css #

runS :: Css -> [Rule] #

rule :: Rule -> Css #

type Css = StyleM () #

The Css context is used to collect style rules which are mappings from selectors to style properties. The Css type is a computation in the StyleM monad that just collects and doesn't return anything.

key :: Val a => Key a -> a -> Css #

Add a new style property to the stylesheet with the specified Key and value. The value can be any type that is in the Val typeclass, with other words: can be converted to a Value.

prefixed :: Val a => Prefixed -> a -> Css #

Add a new style property to the stylesheet with the specified Key and value, like key but use a Prefixed key.

(-:) :: Key Text -> Text -> Css infix 4 #

The colon operator can be used to add style rules to the current context for which there is no embedded version available. Both the key and the value are plain text values and rendered as is to the output CSS.

(?) :: Selector -> Css -> Css infixr 5 #

Assign a stylesheet to a selector. When the selector is nested inside an outer scope it will be composed with deep.

(<?) :: Selector -> Css -> Css infixr 5 #

Assign a stylesheet to a selector. When the selector is nested inside an outer scope it will be composed with |>.

(&) :: Refinement -> Css -> Css infixr 5 #

Assign a stylesheet to a filter selector. When the selector is nested inside an outer scope it will be composed with the with selector.

root :: Selector -> Css -> Css #

Root is used to add style rules to the top scope.

pop :: Int -> Css -> Css #

Pop is used to add style rules to selectors defined in an outer scope. The counter specifies how far up the scope stack we want to add the rules.

query :: MediaType -> [Feature] -> Css -> Css #

Apply a set of style rules when the media type and feature queries apply.

queryNot :: MediaType -> [Feature] -> Css -> Css #

Apply a set of style rules when the media type and feature queries do not apply.

queryOnly :: MediaType -> [Feature] -> Css -> Css #

Apply a set of style rules only when the media type and feature queries apply.

keyframes :: Text -> [(Number, Css)] -> Css #

fontFace :: Css -> Css #

Define a new font-face.

importUrl :: Text -> Css #

Import a CSS file from a URL

important :: Css -> Css #

Indicate the supplied css should override css declarations that would otherwise take precedence.

Use sparingly.