2014-11-18 3 views
5

Я хочу создать общий стиль для всех элементов, где пользователь выбирает (либо с помощью мыши, либо нажатием на сенсорном экране), а затем вводит текст с помощью курсора. Это включает в себя:Есть ли селектор CSS для любого поля, которое вводит пользователь?

  • <input>
  • <input type='text'>
  • <textarea>
  • <input type='password'>
  • <another element that I didn't know existed that you can type into>

Как вы можете видеть (и другие примеры, вероятно), в связи с <textarea> (который падает в этой категории) и <input type='submit'> (что нет), вы не можете просто выбрать все <input>.

Есть ли специальный селектор CSS (псевдо?) Для этого?

+1

Включает ли это ['contenteditable'] (http://www.w3.org/TR/html5/editing.html#contenteditable) регионы? – Sampson

+1

Короткий ответ - нет, но имейте в виду, что для некоторых типов ввода, может ли пользователь вводить текст с помощью курсора, может зависеть от того, какой браузер он использует. – Alohci

ответ

3

Нет, нет.

Либо вы идете со списками

input, textarea {...} 

или использовать CSS-препроцессор (например, дерзость) и сделать себе подмешать или функцию, которая обрабатывает все эти типы. Но в какой-то момент вы не сможете определить все эти элементы.

0

Нет, это не поле для этого, но вы можете комбинировать селекторы с запятыми и стиль их все вместе, как это:

input[type="text"], input[type="search"], input[type="password"], textarea { 
    /* your styles here */ 
} 

Я думаю, что это единственный способ сделать это.

+0

Я не знал, что существует тип = «поиск», что еще раз демонстрирует значение селектора, подобного этому. –

+0

возможно 'input [type! =" Submit "], textarea'? –

+0

@BrianGlaz - 'type =" image "' (и, возможно, другие) собирается бросить ключ в "не подавать" работы. – DocMax

0

Вы можете просто использовать псевдокласс класса focus в CSS самостоятельно, чтобы выбрать любой элемент HTML, который выбран.

CSS:

:focus { 
    /* whatever you want to do to all selected elements */ 
} 

Вот скрипку JS, показывающий, как это работает:

http://jsfiddle.net/vbdgenwz/

+1

Это правда, но это не то, о чем спрашивает OP. Кроме того, фокус применяется не только к вещам, которые вы можете вводить (например, к регулярным гиперссылкам или чему-либо с помощью tabindex). –

+1

ах да, событие a '