2013-08-23 2 views
0

Я создаю selectbox через javascript и добавляю к элементу div как innerhtml Текстовое значение для параметров имеет 2 пробела между строковым значением. Я выполняю сравнение строк, чтобы установить выбранное значение, которое выходит из строя только в IE8, поскольку оно удаляет одно пробел между ними. Ниже демо HTML и сценарий, который описывает мою проблемуIE8 не сохраняет пробелы между строкой

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> 
<head> 
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> 
    <script> 
     function buildSelect() { 
      $('#mydiv').html('<select id="listOption1" name="listOption1"><option value="1234">30.0 x 80.0 in</option><option value="12345">32.0 x 80.0 in</option><option value="123">36 x 80 in</option></select>'); 
     } 
    </script> 
</head> 
<body onload="buildSelect()"> 
    <div id="mydiv"> 
    </div> 
</body> 
</html> 

Во всех других браузерах, в 2 пробела (32,0 х 80,0 в) между строкой сохраняется в том числе IE9.In IE8 это не удерживает тех, , Может ли кто-нибудь предложить решение, как сохранить это пространство в IE8?

+0

возможно, если вы используете  ? –

+0

Есть ли какое-то значение в необходимости более одного раза подряд? –

+0

Это на самом деле некоторые данные, которые я получил от API. Для чтения можно добавить дополнительные пространства для readbility – Vel

ответ

1

Вы можете использовать либо &nbsp; вставить неразрывные пробелы или свойство white-space CSS:

white-space: pre; 

pre сохраняет пробельные без упаковки, pre-wrap будет обернуть текст, где это необходимо.

Для этого требуется действующий DOCTYPE в IE8, который всегда должен присутствовать.

+0

Я добавил white-space: pre для select и для элемента option.Stream существует проблема в IE8 – Vel

+0

Похож на проблему с это выбор/опции. Возможно, вам придется прибегнуть к использованию ' '. –

0

Я предполагаю, что вы хотите добавить пробелы для удобочитаемости? Замените все пространства, где вы добавляете двойные пробелы, с &nbsp;. Это обеспечит согласованность во всех браузерах, включая IE

Смежные вопросы