Issue #96 (DOM CSS, Git/GitHub Tools, Testing/Debugging)
(Skip to the tools section below)
The CSS Object Model (CSSOM) is a DOM API specifically designed for accessing CSS info, and it's currently in the Working Draft stage. Browser support for many parts of the API is pretty good, and the different features open up quite a few possibilities for use in complex apps. In future issues, I'll go through some of the different parts of the API, just to give you a preview of what's possible.
But dealing with stylesheet info via a DOM interface is not new. The DOM Level 2 CSS API has existed for quite some time. Here a review of some of the things you can do with that older standard:
Those are just some of the basics found in the aforementioned old DOM Level 2 CSS API and most of these, I would assume, have very good support even going back to old IE. The new CSSOM opens up even more possibilities, so check that out if you haven't already. And, as mentioned, I'm planning to feature some of the things possible with that API in future tips in this newsletter.
- Get info on every selector and at-rule in a stylesheet via the cssRules object
- For each CSS rule, read the full content via the cssText property.
- Add and remove rules using the deleteRule() and insertRule() methods.
- Use the type property to find out what kind of rule it is (media rule, font face rule, regular style rule, etc)
- Use the readonly parentRule attribute to see if the current rule has a parent (e.g. a selector inside a media query)
Now on to this week's tools!
CSS and HTML Tools
A method for doing HTML includes while the HTML Imports standard gains better support.
A slew of code generators including filter effects, RGBa colors, border images, shadows, and more.
Drop tecate.js into the head of your HTML document and it will display an error message right on the page if there's malformed markup in your file.
A gulp task to "check if all your defined CSS classes are used in your HTML files and vice versa."
This looks useful. It's a tiny utility that can trim a string containing HTML, without breaking the HTML (e.g. by stripping off a closing tag, which you don't want.)
A code generator that lets you use produce a caret (^) as a graphic using pseudo-elements, using the same principle for creating CSS triangles.
"Starter project for designing and testing HTML email templates."
Pie Menu Generator
Creates custom pie menus with SVG and CSS, with options for animation, tool tips, rotate functionality, and more. Looks really nice.
An HTML email framework to build bulletproof responsive HTML email templates. Supports 40+ email clients and has been thoroughly tested using Litmus. This will be my first choice when looking at a redesign of this newsletter.
"The easiest way to find, use and share CSS3 animations."
"A tool for creating Atomic CSS, a collection of single purpose styling units for maximum reuse."
"An experiment in creating custom HTML elements based on today’s most common interface design components."
Git, GitHub, and Command Line Tools
Mac app in pre-release. "Work quickly, safely, and without headaches. The Git interface you've been missing all your life has finally arrived." I'm kind of disappointed that their logo is not a picture of James Brown.
"A little mac app for your GitHub Issues."
"Allows you to set reminders to contribute to your Github projects."
"Easy to use package repository for GitHub. JitPack builds GitHub projects on demand and publishes ready-to-use packages."
"Manage multiple Git identities."
"Allows savvy developers to chat to a website owner via the browser console."
"Feature voting for GitHub. Give advice on projects you use. Find what users expect from your project."
"Easy way to feature open source contributions on your website or portfolio."
A command line tool to tap into the browser support info from caniuse.com.
Testing and Debugging Tools
"Test and monitor your websites for SEO, social, accessibility, speed, mobile, performance and more."
iPhone app (Android coming soon) that provides a monitoring service with hundreds of checks daily, sending you text notifications as status alerts.
Chrome extension. "Get insight into the performance of the website in the current tab – sort of a mini live version of WebPageTest."
"A node library and command line tool to test the integrity of your internal an external hyperlinks."
Online test to analyze and test a website for all sorts of SEO-related features and how they can be improved.
SSL Server Test
"This free online service performs a deep analysis of the configuration of any SSL web server on the public Internet."
A Tweet for Thought
I'm guessing PPK doesn't like this newsletter much!
Suggestions / Corrections
Made something? Send links via Twitter @WebToolsWeekly (details here). No tutorials or articles, please. If you have any suggestions for improvement or corrections, feel free to reply to this email.
Before I Go...
Here is a really nicely designed and addictive game called Twenty. Much better on a tablet. I was able to get to 18 but it certainly takes its toll on your wrist, so beware!
Thanks to all for subscribing and reading!