Month: September 2008

Band Logo Design Contest

Are you a graphic / logo designer? The band I play for is looking for a skilled and imaginative designer to create our band logo. The contest begins today and the deadline for logo submissions is October 19, 2008.

The winning logo and its designer will be announced on October 29, 2008.

And yes… there are a couple of cool awards.

For more information about the contest and logo submissions, please, visit Acid Machine.

Advertisements

Controlling the CSS Opacity Rate of Child Elements in Transparent Parents in Internet Explorer

This article is rather old. Please, read the updated version for a cross-browser solution.

The alpha transparency filter applied on parent elements is inherited by their children, which is not always the desired behavior and can create unwanted design effects.

However, due to a browser bug in Internet Explorer, there is a cool hack that allows not only to reset the alpha transparency of the parent element in its children, but also to control the opacity ratio of its children transparency.

And this rocks! And is done with CSS position: relative of the child elements.

CASE 1: Resetting the Transparency of the Child Elements:

HTML:

<div class="parent">
<div class="child">
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Cras purus pede, aliquam vel, eleifend in, mollis sit amet, ante. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Mauris tempor. Ut pretium. Donec libero turpis, viverra ac, pharetra vel, rutrum ut, pede. Proin vulputate diam a libero. Donec nec turpis. Integer purus. Proin ipsum risus, tempus scelerisque, tempus et, commodo quis, diam. Cras pulvinar urna ac erat. Aliquam pulvinar gravida justo.</p>
</div>
</div>


CSS:

<style type="text/css">
.parent
{
width: 640px;
height: 480px;
border: solid 1px #333;
background: #ccc;
filter: alpha(opacity=30);
}

.child
{
width: 600px;
height: 440px;
border: solid 1px #333;
background: #ccc;
margin: 20px;
position: relative;
}
</style>

To reset the opacity rate of the children elements we simply add position: relative to them.

CASE 2: Setting a Different Transparency of the Child Elements:

Reuse the above code, just add the new filter value to the .child class, i.e:

<style type="text/css">
.child
{
width: 600px;
height: 440px;
border: solid 1px #333;
background: #ccc;
margin: 20px;
position: relative;
filter: alpha(opacity=80);

}
</style>

Enjoy!

Visit http://acidmartin.wemakesites.net – the home of Acid.JS – The AJAX Tools and Widgets Library

Welcome to the Acid Machine

I’ve just finished the website of my new music project – Acid Machine (a neoclassical-progressive band from Sofia, Bulgria). I built in on top of the AJAX content management system TinySite.XML I’m developing and I think the result is really good. Also, several of my AJAX widgets and tools are up and running, and their implementation was a wink of the eye. I love it!

The site is still in process of testing, so be easy on me if you notice bugs or inconsistencies.

Welcome to the Acid Machine!

Google Chrome Sucks Big Time

Yesterday I downloaded the highly promoted, long-awaited, great and rock-solid browser Google Chrome. Full of expectations, I installed it and gave it a try. And in about half an hour I removed it from my machine with an expression of ironical condescension.

Because it sucks big time.

As a matter of fact, in my opinion, the only other browser that sucked that much was Opera 5 some 6-7 years ago.

I’m not sure what was the brilliant idea of taking WebKit and making a “new” browser out of it. The funny thing is that Google used to promote FireFox once, and logically they should have used Gecko as a base for Chrome. But that’s not all, and the above are probably the most insignificant reasons for me gaving up the idea of using it (both as a user and a developer). There is a lot more, here we go:

1. No ad-blocker. WTF? Why?
2. No built-in Google bookmarks
3. Crashing on a regular basis, even on ordinary and simple websites
4. Although extremely fast, its JavaScript engine does not support basic methods (for example overriding properties). A colleague of mine shared the opinion that they must have “forgotten” to implement these just because they could slow down the performance.
5. No proxy option
6. Terrible design and UX
7. No built-in GMail
8. No add-ons, just a bizarre, old-fashioned JavaScript debugger and DOM-viewer. Even Venkman JavaScript debugger is far better than this oddity.

Especially for the users that do not read the Terms of Service of the software they install, please, read carefully the following lines and see how Google “cares” about our privacy:

11.1 You retain copyright and any other rights you already hold in Content which you submit, post or display on or through, the Services. By submitting, posting or displaying the content you give Google a perpetual, irrevocable, worldwide, royalty-free, and non-exclusive license to reproduce, adapt, modify, translate, publish, publicly perform, publicly display and distribute any Content which you submit, post or display on or through, the Services. This license is for the sole purpose of enabling Google to display, distribute and promote the Services and may be revoked for certain Services as defined in the Additional Terms of those Services.

A lousy marketing trick? An attempt for trend-setting (“I use Google search, so I should use Chrome as well)? What is the next step? Google will force their search engine users to install Chrome for the ultimate experience on the Web? No, thanks.

It is a well-known fact that new major browser versions are sometimes poorer than their earlier releases. FireFox 3 is a great example of this. But Chrome Beta (I hope it remains beta until they drop it) gives hell to users and developers with its very first version.