Skip to content

Releases: chharvey/xmeter

v5.2.0

12 Oct 15:20
Compare
Choose a tag to compare

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

07 Oct 19:32
Compare
Choose a tag to compare

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

20 Jul 19:29
Compare
Choose a tag to compare

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

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, use class="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 of ul and ol
    • .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 as div
    • .o-Inline — simple inline object with 0 line-height. effectively same as span
    • .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

07 Jun 19:49
Compare
Choose a tag to compare

Minor Changes

  • adds .transform-origin() fallback mixin
  • DEPRECATES .gradient() and .linear-gradient()
  • removes #6 in favor of vw and vh 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

23 May 17:09
Compare
Choose a tag to compare

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 is none.

  • adds fallback mixins for longhand properties transition-property, transition-duration, transition-timing-function, and transition-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

09 May 02:15
Compare
Choose a tag to compare

Minor Changes

  • adds filter property fallback mixin
  • adds flex-grow, flex-shrink, and flex-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

26 Mar 02:24
Compare
Choose a tag to compare

Fixes

  • fixes a display issue with transparent elements. they now have display: contents;, which is not yet widely supported. The fallback is display: inline;. This behavior can be overridden if need be.
  • closes #6
  • move documentation of element semantics to another repo

Major Release v4.0.0

09 Mar 16:28
Compare
Choose a tag to compare

Major Changes

  • removes fractional variable widths, e.g. @5o6. Manually typing the value, e.g. (5/6)*100% or 83.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

  1. Global variables—accessible throughout the entire site's stylesheets—are prefixed with @g-.
  2. 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.
  3. Private variables—visible only within a partial Less file—are prefixed with @p-.
  4. 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

13 Feb 04:57
Compare
Choose a tag to compare

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

28 Jan 20:08
Compare
Choose a tag to compare

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)