Interesting -moz CSS Properties

By  on  

I'm always on the lookout for interesting vendor-specific features and prefixes. The beauty in them is that they allow developers to enhance where possible; they aren't taken into account as core design, but provide nice little touches. I was poking around Mozilla's MDN and found a great list of proprietary -moz properties. Here are a few of that I found interesting and useful.

::-moz-list-bullet

::-moz-list-bullet allows developers to style the bullet bullet text in lists; not the content, but the bullet text itself:

ul.customList li::-moz-list-bullet {
	color: #999;
	font-size: 24px;
	text-decoration: underline;
}

-moz-force-broken-image-icon

Firefox presently displays alt text for every broken image on the page. This may not be helpful for the purposes of debugging because the text may blend into the page. By using -moz-force-broken-image-icon, you can fore the broken image icon instead of the alt text:

img {
	-moz-force-broken-image-icon: 1;
}

-moz-margin-start and -moz-margin-end

Both work very much like margin-left and margin-right, but reverse position when in RTL mode. Very useful if you're trying to create a flexible website built for LTR or RTL reading.

.myBlock {
	-moz-margin-start: 10px;
	-moz-margin-end: 5px;
}

-moz-orient

The -moz-orient property currently only applies to progressbar elements, allowing them to be vertical or horizontal:

progress.up {
	-moz-orient: vertical;
}

-moz-window-shadow

-moz-window-shadow specifies whether a window in OS X will have a shadow.

.panel {
	-moz-window-shadow: none;
}

There are a few hundred proprietary properties available so take a few moments and let me know if you find any of them interesting, and if you've used any of them for your projects!

Recent Features

  • By
    5 Awesome New Mozilla Technologies You’ve Never Heard Of

    My trip to Mozilla Summit 2013 was incredible.  I've spent so much time focusing on my project that I had lost sight of all of the great work Mozillians were putting out.  MozSummit provided the perfect reminder of how brilliant my colleagues are and how much...

  • By
    JavaScript Promise API

    While synchronous code is easier to follow and debug, async is generally better for performance and flexibility. Why "hold up the show" when you can trigger numerous requests at once and then handle them when each is ready?  Promises are becoming a big part of the JavaScript world...

Incredible Demos

  • By
    Event Delegation with MooTools

    Events play a huge role in JavaScript. I can't name one website I've created in the past two years that hasn't used JavaScript event handling on some level. Ask yourself: how often do I inject elements into the DOM and not add an...

  • By
    Unicode CSS Classes

    CSS class name structure and consistency is really important; some developers camelcase classnames, others use dashes, and others use underscores.  One thing I've learned when toying around by HTML and CSS class names is that you can actually use unicode symbols and icons as classnames.

Discussion

  1. Fabian

    You should change the ol to ul in ol.customList li::-moz-list-bullet, as it’s just working on bullets (imho).

    • Updated. Thanks for having a humble opinion. ;)

  2. Would be nice if you provided some demos, e.g. links to quick jsFiddle tests :)

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!