I installed miredo and have IPv6 up and running it seems. I can ping6 hosts and download webpages with wget or my webbrowser when I specify IPv6 addresses, however whenever I specify a hostname that is offered over both IPv4 and IPv6 the browser picks the IPv4 address for the connection.

How can I change that and let the browser use IPv6 instead of IPv4 if available?

Googling around I found a hint that browsers will prefer IPv4 over IPv6 for 6to4/teredo tunnels, but so far I haven't found an explanation why or how to change that.

For Firefox & other Mozilla/Gecko-based browsers, the network.dns.disableIPv6 setting in about:config should be false if you have IPv6 (it's set to true by default in Ubuntu, because otherwise lots of people get issues with buggy DNS proxies in home routers).

1) Use a local proxy.
If I set Firefox to proxy through Squid running on my machine, Firefox (or more precisely, Squid) will connect through the miredo tunnel. If I have miredo installed but Firefox set to "no proxy" Firefox uses IPV4 first.

2) Install aiccu
If I install aiccu and set it up with a tunnel (e.g. SiXXS) then no matter my proxy settings IPV6 is used first by Firefox.

It may be that as miredo is there to connect to IPV6 sites it is only used when IPV4 is not available, in which case try aiccu.