2009-10-07 2 views
3

Кто-нибудь знает, есть ли пуленепробиваемый (совместимый со стандартами XHTML1.1, кросс-браузерный, не-javascript) способ использования CSS и фоновых изображений для превращения inline link в визуальную кнопку, которая будет растягиваться для размещения различного количества текста (или изменения размера текста)?Inline stretchy button with CSS background image

Я думаю, что мне нужно использовать фоновые изображения, так как кнопки дизайнера имеют закругленные углы с другой цветной рамкой. Он должен работать в IE6 (правительственная работа).

Я уверен, что ответ отрицательный, но, как всегда, считал, что стоит проверить.

Среди прочего, я уже пробовал варианты на sliding doors technique, но не могу заставить его работать, поскольку решение должно работать inline (т. Е. Внутри абзаца), и я не могу установить фиксированную ширину.

EDIT: Есть несколько кнопок, каждый из которых имеет другой цвет для переднего плана, границы и фона. У них также есть градиентное «лицо», но нет необходимости в прозрачности или что-то еще «неортодоксальное». К сожалению, я не могу ссылаться на примеры, поскольку я под NDA.

+0

Вы можете сэкономить много путаницы, если вы действительно связаны с тем, как должна выглядеть кнопка, и как она должна растягиваться, если есть какая-либо непрозрачность, прозрачность, неортодоксальные биты. –

+0

Извинения, если я создал какое-то замешательство. См. Мое редактирование. – da5id

ответ

0

Да, для этого вам, вероятно, нужно сделать image buttons.

+0

Спасибо, но это не сработает, так как форма внутри абзаца не будет проверяться. – da5id

+0

... плюс метод, с которым вы связаны, использует Javascript. – da5id

+0

Ей нужен только JavaScript, если вы пытаетесь присоединить обработчики событий или эффекты фанк-зависания. Можете ли вы поместить форму вокруг абзаца? –

1

Я не уверен, что это будет соответствовать вашим потребностям, но я помог кому-то с нависшими округлыми кнопками в this post ... он использует только HTML и CSS.

+0

Это не напрямую, но я следил за ссылкой со своего поста, чтобы найти свой ответ, так что +1 Cheers :) – da5id

+0

Хе-хе, так что вы нашли ссылки, которые я там тоже разместил;) Рад, что вы получили свой ответ: P – Mottie

1

Я не думаю, что вы можете сделать это в рамках своих ограничений. Проблема в том, что у вас есть один элемент, но для правильного растягивания вам нужно три (нерастянутая левая сторона, вытянутый центр, нерастянутая правая сторона).

+0

Хороший совет (приветствия), но мне удалось сделать это с одним пролетом внутри якоря. Я собираюсь ответить на свой вопрос, если кто-то еще это сделает. – da5id

+0

Ах. Таким образом, вы сделали это с двумя элементами вместо одного. –