私はEMからPXへのコンバーターに取り組んでいます。基本的に、「PX」テキストエリアにコードを貼り付けると、同じコードが em 値とともに「EM」テキストエリアに表示されます。ちょっと機能しますが、すべてのインスタンスの値を置き換えるわけではありません。例: 「padding: 5px;」と入力した場合 「padding: 0.313em;」が表示されます。成功しました。ただし...「padding: 5px 4px;」を入れると... 実際の数値ではなく、「px」を「em」に置き換えるだけです。
ここで試してみてください :: http://jsfiddle.net/tJsNz/
function pxToEm(){
var px = document.getElementById("px"),
em = document.getElementById("em"),
parent = document.getElementById("parent-font-size");
var pxVal = px.value.match(/\d+/ig);
var pxToEm = 1 / parent.value * pxVal;
var pxToEmFixed = pxToEm.toFixed(3);
var pxToEmAnswer = px.value.replace(pxVal, pxToEmFixed).replace(/px/ig, "em");
em.value = pxToEmAnswer;
}