* Move all the H5BP source files into the `src/` directory and remove
all external components that can be fetch via `npm`, namely: the
Apache Server Configs, jQuery, and Normalize.css.
* Add `package.json`, and move to using `npm` for managing dependencies
(for more information about `npm`, see: https://www.npmjs.org/doc/).
* Add `gulp` based build script to allows us to automatically create
the distribution files as well as an archive that can then be attached
to the release - https://github.com/blog/1547-release-your-software
(for more information about gulp, see: http://gulpjs.com/).
* Add other miscellaneous files to help us in our development process:
* `.editorconfig` - to define and maintain consistent coding styles
http://editorconfig.org/
* `.jshintrc` - to specify JSHint configuration options
http://www.jshint.com/docs/
* `.travis.yml` - to specify Travis CI configuration options
http://docs.travis-ci.com/
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
These changes:
* automate some of the tedious work (e.g.: updating the external
components, updating some of the inline content such as version
numbers, etc.)
* will allow us to experiment more (e.g.: allow us to create different
builds of H5BP, builds that can contain different components)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Ref h5bp/html5-boilerplate#1563Closeh5bp/html5-boilerplate#1563
The addition of the `/.editorconfig` file is made in order to
encourage and help developers and their teams define and maintain
consistent coding styles between their different editors and IDEs.
By default, `/.editorconfig` includes some basic properties that
reflect the coding styles from the files provided by default, but
users can easily change them to better suit their needs.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Since users need to install a editor/IDE plugin in order for the
properties from the `/.editorconfig` to be applied, we were reluctant
to add this file in the past (see: h5bp/html5-boilerplate#1124).
Nowadays however, the EditorConfig project provides plugins for most
of the popular editors/IDEs (see: http://editorconfig.org/#download),
plus, more and more developers are using it.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Ref: http://editorconfig.org/Close: h5bp/html5-boilerplate#1561h5bp/html5-boilerplate#1564
The Google Universal Analytics now supports automatic cookie domain
configuration simply by adding `auto` to the analytics tracker create
method: `ga('create', 'UA-XXXX-Y', 'auto');`.
From https://developers.google.com/analytics/devguides/collection/analyticsjs/domains#auto:
"Automatic Cookie Domain Configuration simplifies cross domain
tracking implementations by automatically writing cookies to the
highest level domain possible when the auto parameter is used.
When used on the domain www.example.co.uk, it will try to write
cookies in the following order:
1. co.uk
2. example.co.uk
3. www.example.co.uk
Analytics.js will fail to write a cookie on co.uk but will succeed
on example.co.uk. Since a cookie was succesfully written on a higher
level domain, www.example.co.uk will be skipped"
So, when this parameter is omitted (as it was prior to this commit),
Google Universal Analytics will default to using `location.hostname`,
which will include the subdomain, preventing websites with multiple
subdomains from being able to automatically track unique users across
those subdomains.
Note: The `auto` parameter is now officially part of the recommended
Google Universal Analytics snippet.
https://developers.google.com/analytics/devguides/collection/analyticsjs/
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Ref: https://developers.google.com/analytics/devguides/collection/analyticsjs/domains#autoClose: h5bp/html5-boilerplate#1562.
Update documentation to include the information from the recent
jQuery team announcement:
"To mitigate the risk of “breaking the web”, the jQuery team
decided back in 2013 that jquery-latest.js could not be
upgraded to the 2.0 branch even though that is technically
the latest version. There would just be too many sites that
would mysteriously stop working with older versions of Internet
Explorer, and many of those sites may not be maintained today.
As jQuery adoption has continued to grow, even that safeguard
seems insufficient to protect against careless use of
http://code.jquery.com/jquery-latest.js. So we have decided to
stop updating this file, as well as the minified copy, keeping
both files at version 1.11.1 forever ...
The Google CDN team has joined us in this effort to prevent
inadvertent web breakage and no longer updates the file at
http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js. That
file will stay locked at version 1.11.1 as well."
(from: http://blog.jquery.com/2014/07/03/dont-use-jquery-latest-js/)
Ref: h5bp/html5-boilerplate#1554
* Make minor updates and improvements.
* Remove `.htaccess` mention as the Apache server configs are no longer
part of the HTML5 Boilerplate core, plus, more information about them
will be included in the `misc.md` file.
Update and improve the `crossdomain.xml` related documentation,
as well as move it into the `misc.md` file.
The move is made in order to be more consistent (we don't have
special pages for any of the other "miscellaneous" files).
* Explain the reason for providing the Google Universal Analytics
snippet by default.
* Make it more clear that users are encouraged to use whatever
tracking solution suits their needs best.
Ref h5bp/html5-boilerplate#1547Closeh5bp/html5-boilerplate#1548
* Add note about `precomposed` not being required anymore, as starting
with iOS 7, no special effects are applied to the touch icons.
* Add missing touch icon sizes.
Close#1488
Providing a default value (such as `5cm`) for the print margins is
problematic because:
1) in some browsers, it prevents users from customizing the browser
print settings
2) in some contexts (browser/os/printer), the value may be too:
* small, and the margins may collide with all the different
headers/footers (URL, date, etc) that are usually printed
by default
* big, and the margins will just waste the space
Most browsers provide a default non-zero value for the print margins,
so it's better to not specify a value at all, and just let them handle
this themselves.
See also:
* http://www.w3.org/TR/css3-page/#at-page-rule
* https://developer.mozilla.org/en-US/docs/Web/CSS/@pageClose#1477.
* Wrap text at 80 characters.
* Rephrase content from the `Apple Touch Icons` section to limit subject
to only `apple-touch-icon`s (ref: #1486).
* Other improvements.
In extend.md, which is linked as source for 'more details' on the
touch-icons and favicon, this commit clarifies that by default two
icons are enough if one doesn't want to use art-direction.
* Update various links.
* Remove link to the `Node build script` repository as the project is no
longer maintained.
* Better organize the information provided in `extend.md` by rearranging
the sections alphabetically by title, and including a table of content
for faster navigation.
* Replace links to the Apache Server Configs `doc`
directory, as it no longer exists:
4f778c4a22.
* Provide missing links under the `X-UA-Compatible`
section in the `html.md` file.
This class was removed because it doesn't provide enough use
cases within modern web development. Cases are mostly handled
indiviually by developers.
Reference #1472.
Closes#1475.
The snippet provided in the docs about how to prevent the Skype
plugin from formatting numbers on a web pages is outdated and no
longer works.
Nowadays, the Skype plugin makes it more difficult to overwrite
its injected styles (class names include timestamps, e.g.:
`skype_pnh_print_container_1381964168`, `!important` is used, etc.).
Providing a solution for this use case isn't viable. Also, users
that install such a plugin usually expect the behavior.
Close#1454.
Inform users on how to disable the translation prompt in Chrome or
block Google Translate from translating a web page or any particular
section of the web page.
See also: https://support.google.com/translate/?hl=en#2641276.
Close: #1440.
The reasons behind this decision include the following:
* This project will drop legacy browser support (see #1050), therefore,
the use for conditional classes for IE 8+, becomes much more limited.
* IE 10+ does not support conditional comments:
http://msdn.microsoft.com/en-us/library/ms537512%28v=VS.85%29.aspx.
* Users do and can develop easily without using the conditional
classes, this technique being very limited in scope as no other
browser versions are explicitly target in the same way.
* It fixes the issue that prevents IE from honouring
`<meta http-equiv="X-UA-Compatible" content="IE=edge">` (see: #1187).
This change also removes the related documentation.
Close#1290 and #1187.
Currently we don't use Google Chrome Frame anymore as support for
it will end at the end of the year.
This commit removes references to Chrome Frame within the
documentation. It is related to 2cf1ef7.
Reference #1433.
This commit removes five Apple Touch Icons with different sizes for
the same icon and adds a new icon `apple-touch-icon-precomposed.png`
with a resolution of 152×152px.
Apart from that it adds documentation on how to add more icons if
you need them within your project.
Using only one Apple Touch Icon saves time and is enough in most
cases.
Closes#1367.
Closes#1425.
Chrome Frame is not supported anymore and we removed the option in
8fc2650.
This commit removes the documentation about Chrome Frame in the
X-UA-Compatible meta tag docs.
Related to #1396.