У меня есть текст типа ввода
<input type="text">
В основном я использую javascript ClientRect
для получения сведений о каретке. ClientRect
выглядит так
[object ClientRect]
{
[functions]: ,
__proto__: { },
bottom: 540.7999877929687,
constructor: { },
height: 24,
left: 1034.5399169921875,
right: 1034.5399169921875,
top: 516.7999877929687,
width: 0
}
Это генерируется при каждом текстовом вводе.
left: 1034.5399169921875,
left: 1065.5399169921875,
left: 1078.5399169921875,
Я хочу преобразовать это число в единицы CSS, такие как px/%/rem/vh
. Так что я могу поставить динамический css. Как это сделать?
getBoundingClientRect
все в пикселях. - person evolutionxbox   schedule 12.06.20171034
- это не ваша ширина, этоleft
позиция вашего элемента. Это такжеright
позиция вашего элемента, следовательно, вашwidth: 0
- кажется, он всегда в пикселях. Если вы, например, укажете высоту30pt
для своего элемента,getClientRects()
все равно даст вам высоту в пикселях. - person Nope   schedule 12.06.2017