Releases: chharvey/xmeter
v5.2.0
Minor Changes
- introduces new CSS custom properties ("native variables") for vertical rhythm. with fallbacks for browsers that don't support it (fallbacks may be removed in v6)
- DEPRECATES
.box-sizing()
fallback mixin and__fallback.box-sizing.less
file. Instead, just use plain old CSS:box-sizing: <value>;
. mixin still available but will be OBSOLETE in v6. - remove dynamic jade mixins for documentation—static markup only
- #8 resetcss
- #9 style guide
Minor Release v5.1.0
Minor Changes
- revise system of section fragment identifiers in documentation
- full documentation for Tools (on Github)
- new and improved heading font sizes
- object classes for page hierarchy (back-end)
- import Page and Styleguide back-end classes (sitepage on npm)
- all-new Atoms for font-size! including the default sizes of h1–h6, and two additional larger sizes. Two sets: (1) simply sets
font-size
in ems, and (2) calls.font-size-el()
mixin. See/src/_atom.less
and the Documentation for details.
Fixes
- minor docs CSS comment fixes
- minor docs content fixes
Major Release v5.0.0
Major Changes
These are breaking changes; your code will break if you do not update it and want to use these features.
- renames documentation folder and files. see folder
/docs/
- drops clearfix support for IE 7 and lower
- renames all "tool" less partials:
- files named
__tool.fallback.***.less
are now named__fallback.***.less
- files named
__tool.module.***.less
are now named__tool.***.less
- files named
REMOVALS
- removes OBSOLETE
__tool.module.spacing.less
(see README for specs) - removes OBSOLETE
__tool.module.translucent.less
- removes OBSOLETE
__tool.fallback.gradient.less
- removes OBSOLETE
__tool.fallback.linear-gradient.less
- removes OBSOLETE
__tool.fallback.rotate.less
(see__fallback.transform.less
) - deletes OBSOLETE
.font-size-block()
mixin (use either.font-size-mod()
or.font-size-el()
instead) - deletes OBSOLETE
.delimiters()
mixin (use.delims()
instead) - RENAMES
.transition()
. it is now being used for the old.transition-multi()
mixin (now DEPRECATED), and the mixin previously called.transition()
has been renamed to.transitions()
. see subsection below for more.
Note on renaming transition mixins
When updating your code:
.transition()
→.transitions()
— required or your code will break.transition-multi()
→.transition()
— optional but recommended
Syntax
.transitions(<single-transition-property>#; <time>#; <single-transition-timing-function>#; <time>#);
.transitions(all; 0ms; ease; 0ms); // default
.transition(<single-transition>#;); // note the terminating semicolon inside parameter
.transition(all 0ms ease 0ms); // default
where:
- the character
#
== comma-separated list <single-transition>
==[ none | <single-transition-property> ] || <time> || <single-transition-timing-function> || <time>
.transition-multi()
may be used instead of.transition()
(though this is not recommended)
Minor Changes
These are non-breaking changes; your code does not need to be updated if you want to use these features.
- adds new
.border-[left|right|top|bottom]-radius()
mixins, which set the border-radius of two corners, on the respective side, of a box. One- or two-value syntax is supported (two values specify horizontal / vertical). - DEPRECATES
.transition-multi()
mixin (use.transition()
instead). will be dropped in v6. - DEPRECATES
.clearfix()
mixin. Instead of mixing-in.clearfix();
in Less, useclass="h-Clearfix"
in HTML. - For the first time ever! All-New Objects, Helpers, and Atoms for maintaining and fixing vertical rhythm and layout on your site. Includes styleguide documentation as well. Add these classes to your markup as necessary.
.o-List
— simple blocky list of items. removes base styles oful
andol
.o-Flex
— one-dimensional container of flexible items. uses CSS Flexbox.o-Grid
— two-dimensional container of flexible items. uses CSS Flexbox but may transition to CSS Grid in the future.o-Block
— simple block object with inherited line-height. effectively same asdiv
.o-Inline
— simple inline object with 0 line-height. effectively same asspan
.h-Clearfix
— equivalent to the now-DEPRECATED.clearfix()
mixin. clears float and creates line break.-mb-1vru
— sets the bottom margin to 1vru, pushing subsequent elements down the page.-pt-1vru
— sets the top padding to 1vru, pushing the element itself down the page
Fixes
- fixes a typo in a selector
Minor Release v4.3.0
Minor Changes
- adds
.transform-origin()
fallback mixin - DEPRECATES
.gradient()
and.linear-gradient()
- removes #6 in favor of
vw
andvh
units - minor style updates to test page
DEPRECATIONS
The following mixins are deprecated and will no longer be maintained. They are still available but will be obsolete and removed in Version 5.
- .gradient()
(renamed to.linear-gradient()
) - .linear-gradient() — deprecated due to widespread support of non-prefixed
linear-gradient()
function and discrepancies among browser-prefixed versions (if you need the prefix, you must hand-code it in) - Caution: clearfix support (
__tool.module.clearfix.less
) for IE 7 and lower is still available but will be removed in Version 5. At that point,.clearfix()
will only work on IE 8 and up (and of course all other modern browsers).
Fixes
- fixes an issue treating the
s
element as transparent content model—it is phrasing only (see chharvey/chharvey.github.io#60) - more fixes from upgrading to normalize.css@^4
- minor updates to
package.json
and other metadata
Minor Release v4.2.0
Minor Changes
-
more consistent font sizes
-
upgrade normalize.css v3.0.3 → v4.1.1
-
adds default parameters to all mixins
-
adds new
.delims()
mixin, which takes precedence over the NOW DEPRECATED.delimiters()
mixin. The new.delims()
takes one argument—which is a space-separated list of an even number of strings—rather than two arguments. The default isnone
. -
adds fallback mixins for longhand properties
transition-property
,transition-duration
,transition-timing-function
, andtransition-delay
-
new
.transitions()
mixin sets each fallback mixin above.use
.transitions()
in favor of the DEPRECATED.transition()
. In Version 5,.transition()
will be repurposed to what is now.transition-multi()
, at which point.transition-multi()
will be deprecated.TL;DR: don't use
.transition()
, use.transitions()
instead. still use.transition-multi()
DEPRECATIONS
The following mixins are deprecated and will no longer be maintained. They are still available but will be obsolete and removed in Version 5.
- .delimiters() (renamed to
.delims()
) - .transition() (renamed to
.transitions()
) — will not be dropped but will be repurposed in v5
Minor Release v4.1.0
Minor Changes
- adds
filter
property fallback mixin - adds
flex-grow
,flex-shrink
, andflex-basis
fallback mixins - updates
flex
shorthand property mixin - adds
.vertspacing()
mixin for variable vertical spacing after typographical blocks - adds
.font-size-mod()
and.font-size-el()
mixins, replacing.font-size-block()
- adds
.transform()
mixin for all transformations (including rotations), replacing.rotate()
. argument must be a list of space-separated transformation functions - new
.transition-multi()
mixin supports multiple transition effects. argument must be a list of comma-separated transition effects (each effect being a space-separated list), terminated by a semicolon -
.gradient()
.linear-gradient()
argument syntax must be comma-separated components, terminated by a semicolon
DEPRECATIONS
The following mixins are deprecated and will no longer be maintained. They are still available but will be obsolete and removed in Version 5.
- .push-this()
- .pull-this()
- .push-next()
- .spacing-bottom()
- .spacing-top()
- .font-size-block()
- .translucent()
- .rotate()
- .gradient() (renamed to
.linear-gradient()
)
Fixes
- update README install instructions
- clearer documentation on multiple argument support
Patch v4.0.1
Fixes
- fixes a display issue with transparent elements. they now have
display: contents;
, which is not yet widely supported. The fallback isdisplay: inline;
. This behavior can be overridden if need be. - closes #6
- move documentation of element semantics to another repo
Major Release v4.0.0
Major Changes
-
removes fractional variable widths, e.g.
@5o6
. Manually typing the value, e.g.(5/6)*100%
or83.333%
, is just as easy and saves file size. -
removes Solarized / Lunarized colors. They can now be found in my lux-nox repo and may be installed separately, if you want to use them:
$ npm install lux-nox
-
renames heading font size variables from
@h1_font_size
to
@xmeter_font_size_h1
@g-font_size_h1
etc. -
globalizes all variables and mixins. You no longer need to invoke the
#XMETER
object! However you still need to@import (reference)
the proper Less partial file (which is most likely/src/__settings.less
).
A note on variable naming
- Global variables—accessible throughout the entire site's stylesheets—are prefixed with
@g-
. - Local variables—accessible within a page's or subsite's stylesheets—are prefixed with
@l-
. No such variables are in this package but the naming convention exists for your own packages. - Private variables—visible only within a partial Less file—are prefixed with
@p-
. - Scoped variables, including parameters, within blocks and mixins are not prefixed.
Absolutely no mixins are prefixed (for now—may change later).
Minor Changes
- all-new documentation, with includable Jade content. this means you can include the Xmeter test page in your own project!
-
.translucent()
mixin is hereby DEPRECATED. It may be removed in the future. - in the print media, the background, box-shadow, and text-shadow properties, which were reset on all elements, are now marked
!important
. Now classes won't override this behavior.
Fixes
- color for
<s>
elements is now darker and more accessible-friendly - comment headings are now inline comments so they are not compiled into output
- all npm dependencies have been moved to dev-dependencies
Minor Release v3.6.0
Minor Changes
- adds
.column-width()
fallback mixin
Fixes
- fixes a
.font-size-block()
issue causing the@line_height_orig
parameter's default value to be undefined - fixes styling of
.clearfix()
mixin - fixes mixin guard syntax
Minor Release v3.5.0
Minor Changes
- add new optional param to
font-size-block()
. this specifies the height (in vrus) of each line of text. (vru = vertical rhythm unit) - rename font-size variables: e.g.,
@h1_font_size
is now@xmeter_font_size_h1
. - prepend repo name to src files, so that ambiguity is reduced when viewing concatenated output css
- refactor
.sprite()
mixin so that output is conditionally dependent on the@position
param
Fixes
- no-href links now have
opacity: 0.5
only for@media screen
(previously it was for all media)