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

  • By
    CSS Animations Between Media Queries

    CSS animations are right up there with sliced bread. CSS animations are efficient because they can be hardware accelerated, they require no JavaScript overhead, and they are composed of very little CSS code. Quite often we add CSS transforms to elements via CSS during...

Incredible Demos

  • By
    Degradable SELECT onChange

    Whenever I go to Google Analytics I notice a slight flicker in the dropdown list area. I see a button appear for the shortest amount of time and the poof! Gone. What that tells me is that Google is making their site function...

  • By
    Styling CSS Print Page Breaks

    It's important to construct your websites in a fashion that lends well to print. I use a page-break CSS class on my websites to tell the browser to insert a page break at strategic points on the page. During the development of my...

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!