Выровняйте фиксированный элемент div справа вверху переменной ширины TD - PullRequest
2 голосов
/ 24 ноября 2011

У меня есть проект, в котором мне нужно выровнять div по правому краю так, чтобы он располагался поверх существующей переменной ширины td.

Что меня озадачило, так это аспект переменной ширины.Я могу заставить div сидеть поверх существующего относительно позиционированного td, используя фиксированное позиционирование для div.Однако, поскольку ширина TD может измениться, я не могу установить значение "left:" для div.

Я создал скрипку, чтобы продемонстрировать ее с выравниванием по левому краю в td, теперь мне просто нужновыровняйте его по правому краю:

jsfiddle.net/ErDr6/36/

Я просматривал некоторые другие сообщения, но они, кажется, имеют дело с элементами фиксированной ширины:

Выровняйте div с фиксированной позициейправая сторона

Ответы [ 2 ]

3 голосов
/ 24 ноября 2011

Во-первых, измените position: fixed; на position: absolute;, чтобы стрелки не оставались неподвижными относительно области просмотра при прокрутке страницы.Затем добавьте следующее:

#col_arrow {
    right: 0;
}
.wc-day-column-header {
    position: relative;
}

Это выровняет стрелку справа от его родителя.Мы добавляем position: relative; к родителю, чтобы ограничить его этим контейнером.

0 голосов
/ 24 ноября 2011

Если оно должно быть динамическим, то абсолютная позиция может быть рассчитана как:

theTD.offsetLeft + theTD.offsetWidth-arrow.offsetWidth

...