Asia-Pfanne mit Ente und Nudeln
Mengen für 2 Personen:
1 Entenbrust
Chinesische Quick-Cooking-Nudeln (2 Nester)
1/2 rote Paprika
1/2 gelbe Paprika
5 Frühlingszwiebeln
1 Pepperonie (mehr oder weniger, je nach Geschmack)
Eine Hand voll Bambussprossen
Eine Hand voll Zuckerschoten
2 Zehen Knoblauch
20 g Ingwer
3 EL Semsam-Öl
2 EL Erdnuss-Öl
4 EL Soja-Sauce
1/8 Liter Gemüsebrühe
Sesam-Samen
Das Fett der Entenbrust rautenförmig einschneiden und die Ente mit Salz würzen. Den Knoblauch, die Pepperonie und den Ingwer in feine Würfel schneiden. Die Paprika in Streifen schneiden. Von den Frühlingszwiebeln den hellen Teil in Stücke schneiden.
Die chinesischen Nudeln in kochendes Wasser geben in mit etwas Salz al dente kochen (das geht nicht so flott, wie der Name verspricht - bei mir waren es ca. 10 Minuten).
Die Öle in einen Wok geben und auf mittlere Temperatur erhitzen. Die Entenbrust darin 10-15 Minten medium oder well done braten, danach in Streifen schneiden und beiseite stellen. Das Öl bis auf einen kleinen Rest wegschütten. Den Sesam-Samen für ein paar Minuten im Wok anrösten. Den Knoblauch, Ingwer und die Pepperonie dazu geben und etwas dünsten. Dann die Paprika, die Zuckerschoten und die Frühlingszwiebeln und die Sprossen dazu geben und 10-15 Minuten gar braten. Mit der Soja-Sauce und der Gemüsebrühe ablöschen, die Nudeln unterheben, die Entenbrust-Streifen dazu geben und alles zusammen noch einmal für wenige Minuten braten.
Klein-Berlin
Hier kommt meine Liste von Bars, Kneipen und Restaurants, die einem im kleinen Karlsruhe das Gefühl vom großen Berlin vermitteln. Ein Besuch lohnt sich immer - adiós Ludwigsplatz, ihr öden Einkaufstempel und Shopping-Meilen!











Karlsruher Walk Score
Mit dem Walk Score Service kann man anhand einer Adresse erfahren, wie "lauffreundlich" die Umgebung dieses Ortes ist. Ich habe das mal für die verschiedenen Karlsruher Stadtteile zusammengestellt:
Zentrum: 75 out of 100
Südstadt: 71 out of 100
Südweststadt: 60 out of 100
Oststadt: 55 out of 100
Weststadt: 54 out of 100
Nordstadt: 37 out of 100
Meine Wohnung in der Ostadt lädt also mittelmäßig zum Laufen ein und liegt nur knapp vor der sibirischen Hauptstadt Novosibirsk
. Erschreckend: Die Nordstadt liegt hinter Orten wie Castrop-Rauxel. Weit abgeschlagen jedoch der Walk Score von Timbuktu.
Software is hard - Firebug Tutorial
SenSEO basierte bisher auf dem Code einer YSlow 1.x Version. An vielen Stellen habe ich bis heute nicht verstanden, was der Code von Yahoo! eigentlich tut und warum er so und nicht anders entwicklet wurde. Auf die Dauer wollte ich mich damit nicht abfinden. Dank dieses Tutorials zur Entwicklung von Firebug-Extensions im Blog von Jan "Honza" Odvarko war es mir möglich, den gesamten SenSEO-Code an einem Abend komplett zu überarbeiten. Das Ergebnis ist verständlicher, aufgeräumter und strukturierter. Ich erhoffe mir von dem Refactoring, dass die Extension dadurch in Zukunft stabiler und schneller läuft. Da ich nun von der ersten bis zur letzten Code-Zeile genau was, was diese tut, sollten auch eventuell nötige Updates auf neue Firebug-Versionen kein Problem mehr darstellen. Bevor ich die neue Version veröffentlichen kann, ist allerdings noch etwas Massage nötig.
Semantic Checker mit WAI-ARIA-Support
In der Version 0.7.0 unterstützt die Firefox-Extension Semantic Checker nun auch WAI-ARIA. Neben allen role-Attributen werden auch States und Properties (alle aria-* Attribute) ausgewertet. Damit sind alle geplanten Features für Semantic Checker implementiert. Mit der aktuellen Version habe ich einen Screenshot vom neuen Bestandskunden-Shop gemacht.
don't move cause nobody wants to get hurt...
Firefoxland
An der Live-Download-Statistik des Firefox 3.6 kann man sehr schön sehen, dass Deutschland Firefoxland ist.
PNG-Transparenz für den IE6 ohne HTC
Ich nehme eine aktuelle Zusammenstellung von Performance-Problemen des IE6 im Zusammenspiel mit der HTC-Technologie zum Anlass, eine Alternative für PNG-Transparenz im IE6 ohne den Einsatz von HTC vorzustellen. Grund für die Entwicklung war die Konfrontation mit einigen der im Artikel genannten Probleme bei der Umsetzung eines unserer letzten Projekte.
Abgesehen vom Erzeugen des Namespace UNOUNO.ie kann diese Lösung nativ ohne zusätzliches JavaScript eingesetzt werden. Wie bei der ursprünglichen HTC-Lösung werden lediglich Elemente mit der Klasse alphapng mit PNG-Transparenz versehen. Der Code muss am Ende der Seite vor dem schließenden body-Tag eingebunden werden. Weiterhin sollte im Stylesheet über einen Conditional-Comment oder über den * html Selektor die Regel .alphapng a { z-index: 999; } angegeben werden, um die Funktion von Links sicherzustellen.
// init ie Namespace
UNOUNO.namespace('ie');
// place path to blank 1x1 pixel here
UNOUNO.ie.getPixel = function() {
// Pfad zu einem 1x1-Pixel transparenten Gif
return '/modules/frontend-elements/img/pnghack/transparent.gif';
};
// sets proprietary filter for alpha transparenz
UNOUNO.ie.setFilter = function(src) {
return 'progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true,sizingMethod=crop,src="' + src + '")';
};
UNOUNO.ie.fixPng = function(element, width, height) {
// fix "normal" Images and Inputs
if (/IMG|INPUT/.test(element.nodeName)) {
if (element.src) {
if (/.*\.png([?].*)?$/i.test(element.src)) { // make sure it is png image
var source = element.src;
element.style.filter = UNOUNO.ie.setFilter(source);
element.src = UNOUNO.ie.getPixel();
if (width) {
element.style.width = width + 'px';
}
if (height) {
element.style.height = height + 'px';
}
var position = element.currentStyle.position;
if (position != 'absolute' && position != 'relative') {
// this may cause layout bugs
element.style.position = 'relative';
}
}
}
}
// fix elements with png as background
var bgSrc = element.currentStyle.backgroundImage || element.style.backgroundImage;
if ((bgSrc + element.src).indexOf(UNOUNO.ie.getPixel()) == -1) {
var bgPNG = bgSrc.match(/^url[("']+(.*\.png[^\)"']*)[\)"']+[^\)]*$/i);
if (bgPNG) {
var source = bgPNG[1];
element.style.backgroundImage = 'url("' + UNOUNO.ie.getPixel() + '")';
element.style.filter = UNOUNO.ie.setFilter(source);
}
}
};
UNOUNO.ie.getElementsByClassName = function(clsName) {
var retVal = new Array();
var elements = document.getElementsByTagName("*");
for (var i = 0;i < elements.length;i++){
if (elements[i].className.indexOf(" ") >= 0){
var classes = elements[i].className.split(" ");
for (var j = 0;j < classes.length;j++){
if (classes[j] == clsName)
retVal.push(elements[i]);
}
}
else if (elements[i].className == clsName) {
retVal.push(elements[i]);
}
}
return retVal;
}
UNOUNO.ie.initFixPng = function(element) {
var pngElements = UNOUNO.ie.getElementsByClassName('alphapng');
for (var i = 0; i < pngElements.length; i++) {
UNOUNO.ie.fixPng(pngElements[i]);
}
};
UNOUNO.ie.initFixPng();
Es gibt für diese Lösung Einschränkungen. So werden keine sich wiederholenden (gekachelten) oder in irgend einer Weise positionierten Hintergrundbilder berücksichtig. Die neuste Version des TwinHelix IE PNG Fix verspricht dafür zwar eine Lösung, allerdings verrät ein Blick in den (im Alpha-Stadium befindlichen) Quellcode, das da jede Menge Voodoo passiert, dessen Konsequenzen sich für komplexe Layout-Szenarien, mal ganz abgesehen von den geschilderten Problemen mit HTC, nur sehr schwer abschätzen lassen.
Archive
- September 2010 (1)
- August 2010 (3)
- Juli 2010 (2)
- Juni 2010 (3)
- Mai 2010 (9)
- April 2010 (8)
- März 2010 (13)
- Februar 2010 (10)
- Januar 2010 (11)
- Dezember 2009 (8)
- November 2009 (6)
- Oktober 2009 (10)
- September 2009 (9)
- August 2009 (12)
- Juli 2009 (16)
- Juni 2009 (17)
- Mai 2009 (8)
- April 2009 (12)
- März 2009 (8)
- Februar 2009 (10)
- Januar 2009 (9)
- Dezember 2008 (2)
- November 2008 (8)
- Oktober 2008 (13)
- September 2008 (3)
- August 2008 (5)
- Juli 2008 (9)
- Juni 2008 (5)
- Mai 2008 (5)
- April 2008 (7)
- März 2008 (2)
- Das Neueste ...
- Älteres ...
