почему элементы HTML не подчиняются моему CSS? - PullRequest
1 голос
/ 16 июня 2009

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

Почему элементы формы не следуют тем же правилам, что и другие элементы DOM? у них, похоже, есть свое представление о том, как быть ростом в 10 пикселей от любого другого элемента DOM. Даже если я дам им все, что я могу придумать:

.mybutton, .mylink {
    display: block;
    float: left;
    height: 10px;
    width: 20px;
    margin: 0;
    padding: 0;
    line-height: 10px;
    border: none;
}

У меня есть эти два элемента рядом друг с другом, и я хочу, чтобы они соединялись и отображались как один визуальный элемент. Пожалуйста, не предлагайте помещать все это в div с правильным стилем - я хочу, чтобы у кнопки и ссылки был другой стиль "hover" друг от друга.

единственное решение, которое я могу найти, это просто сделать их обеими ссылками и использовать javascript для отправки формы с помощью события onClick. Это не работает для людей без JavaScript, и это отстой.

Спасибо за вашу помощь! Мне нужно превратить эти элементы формы в подчиненную форму DOM!

PS - Я также заметил этот эффект, когда пытался заставить кнопку и ввод текста выравнивать аналогичным образом. Может это просто кнопки вообще? Я пытался использовать <button> и <input type="button"> безрезультатно. Они оба f ** кед

Ответы [ 5 ]

3 голосов
/ 16 июня 2009

Они не. Вот как это работает, я считаю, что Safari позволяет это больше, чем другие браузеры, но не всем нравится

Это из устаревшей спецификации , но я не могу найти ее недавно: (выделено мной)

8.1 Стили управления формой

Ожидается, что рабочая группа CSS разработает язык, разработанный, среди прочего, для расширенного оформления элементов управления формой. В то же время, такие технологии, как [HTC] и [XBL2] могут быть использованы в качестве руководства для того, что ожидается.

UA, в отсутствие такой расширенной информации о стилях, может отображать элементы управления формой, описанные в этом проекте, по своему желанию . рекомендуется, чтобы элементы управления форм оставались верными внешнему виду и ощущению глобального пользовательского интерфейса системы .

CSS 2.1 явно не определяет , как CSS применяется к элементам управления формы. [CSS21]

1 голос
/ 16 июня 2009

Нет способа описать большинство полей формы с помощью CSS. Из-за этого трудно изменить их стиль, поскольку нет стандартного набора стилей для переопределения.

Например, посмотрите этот пример , как сделать элементы кнопок похожими на ссылки

Спецификация CSS3 предлагает способы его работы в будущем

1 голос
/ 16 июня 2009

Да, вы не можете. Я много играю с высотой, отступами, размером шрифта и свойствами отображения, чтобы они выглядели так, как я хочу, и даже они не идеальны в каждом браузере

1 голос
/ 16 июня 2009

есть ли текст / значение на этих кнопках, так как вам может потребоваться изменить размер текста, иначе это приведет к увеличению высоты. если вы можете опубликовать HTML, было бы легче ответить. Josh

0 голосов
/ 16 июня 2009

Нашел ответ ... это был не один из тех ... извините, ребята: (

элементы унаследовали отступ в 3 пикселя (поскольку стиль был установлен с использованием идентификатора и классов, которые я использовал, чтобы сделать их одинаковыми)

Очевидно, что при увеличении отступа для кнопки цвет фона не станет больше, но для ссылки он станет больше.

бух

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...