Inputs / Form Inputs

    Form inputs allow you to create flexible and beautiful Form layouts.

    It is recommended to use inputs with List View:

    Where:

    • - required additional class on item-content. Required for correct input item layout

    • item-label - additional class on item-title required to display label correctly

    • item-input-wrap - required additional input wrapper. Must be a direct child of item-inner

    • <span class="input-clear-button"> - button that will clear input value in click. Optional

    By default inputs list is displayed with stacked labels. Stacked labels always appear on top of the input:

    1. <div class="list">
    2. <ul>
    3. ...
    4. <li class="item-content item-input">
    5. <div class="item-media">... icon/image here ...</div>
    6. <div class="item-inner">
    7. <div class="item-title item-label">Name</div>
    8. <div class="item-input-wrap">
    9. <input type="text" name="name">
    10. <span class="input-clear-button"></span>
    11. </div>
    12. </div>
    13. </li>
    14. ...
    15. </ul>
    16. </div>
    • item-title item-label - input label

    If you want to use inline labels then you can additional inline-labels class to the whole list or inline-label class to the single item:

    1. <div class="list inline-labels">
    2. <ul>
    3. ...
    4. <li class="item-content item-input">
    5. <div class="item-media">... icon/image here ...</div>
    6. <div class="item-inner">
    7. <div class="item-title item-label">Name</div>
    8. <div class="item-input-wrap">
    9. <input type="text" name="name">
    10. <span class="input-clear-button"></span>
    11. </div>
    12. </div>
    13. </li>
    14. ...
    15. </ul>
    16. </div>
    17. <!-- or just to single item -->
    18. <div class="list">
    19. <ul>
    20. ...
    21. <!-- additional "inline-label" class -->
    22. <li class="item-content item-input inline-label">
    23. ...
    24. </li>
    25. ...
    26. </ul>
    27. </div>

    MD theme only feature

    To add floating label, we need to use item-floating-label class instead of item-label. In iOS theme it will be displayed as default stacked label.

    1. <div class="list">
    2. <ul>
    3. ...
    4. <li class="item-content item-input">
    5. <div class="item-media">... icon/image here ...</div>
    6. <div class="item-inner">
    7. <!-- "item-floating-label" class on item title -->
    8. <div class="item-title item-floating-label">Name</div>
    9. <div class="item-input-wrap">
    10. <input type="text" name="name">
    11. <span class="input-clear-button"></span>
    12. </div>
    13. </div>
    14. </li>
    15. ...
    16. </ul>
    17. </div>

    It is also possible to additional information about form input:

    Where:

    • item-input-with-info - required additional class on input item

    • <div class="item-input-info">...</div> - element with additional information

    It is also possible to indicate dropdown input (like select) with additional input-dropdown-wrap class. It will add small dropdown icon on the right (▼):

    1. <div class="list">
    2. <ul>
    3. ...
    4. <li class="item-content item-input">
    5. <div class="item-media">... icon/image here ...</div>
    6. <div class="item-inner">
    7. <div class="item-title item-label">Name</div>
    8. <!-- additional "input-dropdown-wrap" class -->
    9. <div class="item-input-wrap input-dropdown-wrap">
    10. <select>
    11. ...
    12. </select>
    13. </div>
    14. </div>
    15. </li>
    16. ...
    17. </ul>
    18. </div>

    Supported Inputs

    Resizable Textarea

    To make textarea automatically resize based on its content we may just add resizable class:

    1. <textarea class="resizable"></textarea>

    Framework7 supports based on validity input property. With enabled validation, there will appear validation error messages in case of input has invalid value.

    To enable validation we must add: required and validate attributes to the input element.

    Value validation depends on input type. For example input type="email" will be validated to match email pattern, etc. It is default browser behavior. In case you want to add custom rule to validate input value, then it must be done using pattern input attribute:

    1. <!-- default validation, check for value is not empty -->
    2. <input type="text" placeholder="Your name" required validate>
    3. <!-- default email validation, value must be email -->
    4. <input type="email" placeholder="Your e-mail" required validate>
    5. <!-- default url validation -->
    6. <input type="url" placeholder="Your URL" required validate>
    7. <!-- pattern validation, value must be "apple" or "banana" -->
    8. <input type="text" required validate pattern="apple|banana" placeholder="Type 'apple' or 'banana'" >
    9. <!-- pattern validation with custom error message, value must be numbers only -->
    10. <input type="text" placeholder="Enter number" required validate pattern="[0-9]*" data-error-message="Only numbers please!">

    Input State Classes

    There are several classes that can be added to input element depending on its state and content:

    • input-with-value - will be added to input when it has value
    • input-focused - will be added to input when it is focused
    • input-invalid - will be added to input when its value is not valid

    Same states will be added to input’s parent item-input element:

    • item-input-with-value - will be added to input item when its input has value
    • item-input-focused - will be added to input item when its input is focused
    • item-input-invalid - will be added to input item when its input’s value is not valid

    Input App Parameters

    It is possible to control some default input behavior using global app parameters where we can pass input-related parameters under input property:

    For example:

    Input Events

    Inputs will fire the following DOM events input elements:

    Examples

    1. <div class="block-title">Full Layout / Inline Labels</div>
    2. <div class="list inline-labels no-hairlines-md">
    3. <ul>
    4. <li class="item-content item-input">
    5. <div class="item-media">
    6. <i class="icon demo-list-icon"></i>
    7. </div>
    8. <div class="item-inner">
    9. <div class="item-title item-label">Name</div>
    10. <div class="item-input-wrap">
    11. <input type="text" placeholder="Your name">
    12. <span class="input-clear-button"></span>
    13. </div>
    14. </div>
    15. </li>
    16. <li class="item-content item-input">
    17. <div class="item-media">
    18. <i class="icon demo-list-icon"></i>
    19. </div>
    20. <div class="item-inner">
    21. <div class="item-title item-label">Password</div>
    22. <div class="item-input-wrap">
    23. <input type="password" placeholder="Your password">
    24. <span class="input-clear-button"></span>
    25. </div>
    26. </div>
    27. </li>
    28. <li class="item-content item-input">
    29. <div class="item-media">
    30. <i class="icon demo-list-icon"></i>
    31. </div>
    32. <div class="item-inner">
    33. <div class="item-title item-label">E-mail</div>
    34. <div class="item-input-wrap">
    35. <input type="email" placeholder="Your e-mail">
    36. <span class="input-clear-button"></span>
    37. </div>
    38. </div>
    39. </li>
    40. <li class="item-content item-input">
    41. <div class="item-media">
    42. <i class="icon demo-list-icon"></i>
    43. </div>
    44. <div class="item-inner">
    45. <div class="item-title item-label">URL</div>
    46. <div class="item-input-wrap">
    47. <input type="url" placeholder="URL">
    48. <span class="input-clear-button"></span>
    49. </div>
    50. </div>
    51. </li>
    52. <li class="item-content item-input">
    53. <div class="item-media">
    54. <i class="icon demo-list-icon"></i>
    55. </div>
    56. <div class="item-inner">
    57. <div class="item-title item-label">Phone</div>
    58. <div class="item-input-wrap">
    59. <input type="tel" placeholder="Your phone number">
    60. <span class="input-clear-button"></span>
    61. </div>
    62. </div>
    63. </li>
    64. <li class="item-content item-input">
    65. <div class="item-media">
    66. <i class="icon demo-list-icon"></i>
    67. </div>
    68. <div class="item-inner">
    69. <div class="item-title item-label">Gender</div>
    70. <div class="item-input-wrap input-dropdown-wrap">
    71. <select placeholder="Please choose...">
    72. <option value="Male">Male</option>
    73. <option value="Female">Female</option>
    74. </select>
    75. </div>
    76. </div>
    77. </li>
    78. <li class="item-content item-input">
    79. <div class="item-media">
    80. <i class="icon demo-list-icon"></i>
    81. </div>
    82. <div class="item-inner">
    83. <div class="item-title item-label">Birthday</div>
    84. <div class="item-input-wrap">
    85. <input type="date" value="2014-04-30" placeholder="Please choose...">
    86. </div>
    87. </div>
    88. </li>
    89. <li class="item-content item-input">
    90. <div class="item-media">
    91. <i class="icon demo-list-icon"></i>
    92. </div>
    93. <div class="item-inner">
    94. <div class="item-title item-label">Date time</div>
    95. <div class="item-input-wrap">
    96. <input type="datetime-local" placeholder="Please choose...">
    97. </div>
    98. </div>
    99. </li>
    100. <li class="item-content item-input">
    101. <div class="item-media">
    102. <i class="icon demo-list-icon"></i>
    103. </div>
    104. <div class="item-inner">
    105. <div class="item-title item-label">Range</div>
    106. <div class="item-input-wrap">
    107. <input type="range" value="50" min="0" max="100" step="1">
    108. </div>
    109. </div>
    110. </li>
    111. <li class="item-content item-input">
    112. <div class="item-media">
    113. <i class="icon demo-list-icon"></i>
    114. </div>
    115. <div class="item-inner">
    116. <div class="item-title item-label">Textarea</div>
    117. <div class="item-input-wrap">
    118. <textarea placeholder="Bio"></textarea>
    119. </div>
    120. </div>
    121. </li>
    122. <li class="item-content item-input">
    123. <div class="item-media">
    124. <i class="icon demo-list-icon"></i>
    125. </div>
    126. <div class="item-inner">
    127. <div class="item-title item-label">Resizable</div>
    128. <div class="item-input-wrap">
    129. <textarea class="resizable" placeholder="Bio"></textarea>
    130. </div>
    131. </div>
    132. </li>
    133. </ul>
    134. </div>
    135. <div class="block-title">Full Layout / Stacked Labels</div>
    136. <div class="list no-hairlines-md">
    137. <ul>
    138. <li class="item-content item-input">
    139. <div class="item-media">
    140. <i class="icon demo-list-icon"></i>
    141. </div>
    142. <div class="item-inner">
    143. <div class="item-title item-label">Name</div>
    144. <div class="item-input-wrap">
    145. <input type="text" placeholder="Your name">
    146. <span class="input-clear-button"></span>
    147. </div>
    148. </div>
    149. </li>
    150. <li class="item-content item-input">
    151. <div class="item-media">
    152. <i class="icon demo-list-icon"></i>
    153. </div>
    154. <div class="item-inner">
    155. <div class="item-title item-label">Password</div>
    156. <div class="item-input-wrap">
    157. <input type="password" placeholder="Your password">
    158. <span class="input-clear-button"></span>
    159. </div>
    160. </div>
    161. </li>
    162. <li class="item-content item-input">
    163. <div class="item-media">
    164. <i class="icon demo-list-icon"></i>
    165. </div>
    166. <div class="item-inner">
    167. <div class="item-title item-label">E-mail</div>
    168. <div class="item-input-wrap">
    169. <input type="email" placeholder="Your e-mail">
    170. <span class="input-clear-button"></span>
    171. </div>
    172. </div>
    173. </li>
    174. <li class="item-content item-input">
    175. <div class="item-media">
    176. <i class="icon demo-list-icon"></i>
    177. </div>
    178. <div class="item-inner">
    179. <div class="item-title item-label">URL</div>
    180. <div class="item-input-wrap">
    181. <input type="url" placeholder="URL">
    182. <span class="input-clear-button"></span>
    183. </div>
    184. </div>
    185. </li>
    186. <li class="item-content item-input">
    187. <div class="item-media">
    188. <i class="icon demo-list-icon"></i>
    189. </div>
    190. <div class="item-inner">
    191. <div class="item-title item-label">Phone</div>
    192. <div class="item-input-wrap">
    193. <input type="tel" placeholder="Your phone number">
    194. <span class="input-clear-button"></span>
    195. </div>
    196. </div>
    197. </li>
    198. <li class="item-content item-input">
    199. <div class="item-media">
    200. <i class="icon demo-list-icon"></i>
    201. </div>
    202. <div class="item-inner">
    203. <div class="item-title item-label">Gender</div>
    204. <div class="item-input-wrap input-dropdown-wrap">
    205. <select placeholder="Please choose...">
    206. <option value="Male">Male</option>
    207. <option value="Female">Female</option>
    208. </select>
    209. </div>
    210. </div>
    211. </li>
    212. <li class="item-content item-input">
    213. <div class="item-media">
    214. <i class="icon demo-list-icon"></i>
    215. </div>
    216. <div class="item-inner">
    217. <div class="item-title item-label">Birthday</div>
    218. <div class="item-input-wrap">
    219. <input type="date" value="2014-04-30" placeholder="Please choose...">
    220. </div>
    221. </div>
    222. </li>
    223. <li class="item-content item-input">
    224. <div class="item-media">
    225. <i class="icon demo-list-icon"></i>
    226. </div>
    227. <div class="item-inner">
    228. <div class="item-title item-label">Date time</div>
    229. <div class="item-input-wrap">
    230. <input type="datetime-local" placeholder="Please choose...">
    231. </div>
    232. </div>
    233. </li>
    234. <li class="item-content item-input">
    235. <div class="item-media">
    236. <i class="icon demo-list-icon"></i>
    237. </div>
    238. <div class="item-inner">
    239. <div class="item-title item-label">Range</div>
    240. <div class="item-input-wrap">
    241. <div class="range-slider range-slider-init" data-label="true">
    242. <input type="range" value="50" min="0" max="100" step="1">
    243. </div>
    244. </div>
    245. </div>
    246. </li>
    247. <li class="item-content item-input">
    248. <div class="item-media">
    249. <i class="icon demo-list-icon"></i>
    250. </div>
    251. <div class="item-inner">
    252. <div class="item-title item-label">Textarea</div>
    253. <div class="item-input-wrap">
    254. <textarea placeholder="Bio"></textarea>
    255. </div>
    256. </div>
    257. </li>
    258. <li class="item-content item-input">
    259. <div class="item-media">
    260. <i class="icon demo-list-icon"></i>
    261. </div>
    262. <div class="item-inner">
    263. <div class="item-title item-label">Resizable</div>
    264. <div class="item-input-wrap">
    265. <textarea class="resizable" placeholder="Bio"></textarea>
    266. </div>
    267. </div>
    268. </li>
    269. </ul>
    270. </div>
    271. <div class="block-title">Floating Labels (MD-theme only)</div>
    272. <div class="list no-hairlines-md">
    273. <ul>
    274. <li class="item-content item-input">
    275. <div class="item-media">
    276. <i class="icon demo-list-icon"></i>
    277. </div>
    278. <div class="item-inner">
    279. <div class="item-title item-floating-label">Name</div>
    280. <div class="item-input-wrap">
    281. <input type="text" placeholder="Your name">
    282. <span class="input-clear-button"></span>
    283. </div>
    284. </div>
    285. </li>
    286. <li class="item-content item-input">
    287. <div class="item-media">
    288. <i class="icon demo-list-icon"></i>
    289. </div>
    290. <div class="item-inner">
    291. <div class="item-title item-floating-label">Password</div>
    292. <div class="item-input-wrap">
    293. <input type="password" placeholder="Your password">
    294. <span class="input-clear-button"></span>
    295. </div>
    296. </div>
    297. </li>
    298. <li class="item-content item-input">
    299. <div class="item-media">
    300. <i class="icon demo-list-icon"></i>
    301. </div>
    302. <div class="item-inner">
    303. <div class="item-title item-floating-label">E-mail</div>
    304. <div class="item-input-wrap">
    305. <input type="email" placeholder="Your e-mail">
    306. <span class="input-clear-button"></span>
    307. </div>
    308. </div>
    309. </li>
    310. <li class="item-content item-input">
    311. <div class="item-media">
    312. <i class="icon demo-list-icon"></i>
    313. </div>
    314. <div class="item-inner">
    315. <div class="item-title item-floating-label">URL</div>
    316. <div class="item-input-wrap">
    317. <input type="url" placeholder="URL">
    318. <span class="input-clear-button"></span>
    319. </div>
    320. </div>
    321. </li>
    322. <li class="item-content item-input">
    323. <div class="item-media">
    324. <i class="icon demo-list-icon"></i>
    325. </div>
    326. <div class="item-inner">
    327. <div class="item-title item-floating-label">Phone</div>
    328. <div class="item-input-wrap">
    329. <input type="tel" placeholder="Your phone number">
    330. <span class="input-clear-button"></span>
    331. </div>
    332. </div>
    333. </li>
    334. <li class="item-content item-input">
    335. <div class="item-media">
    336. <i class="icon demo-list-icon"></i>
    337. </div>
    338. <div class="item-inner">
    339. <div class="item-title item-floating-label">Bio</div>
    340. <div class="item-input-wrap">
    341. <textarea class="resizable" placeholder="Bio"></textarea>
    342. <span class="input-clear-button"></span>
    343. </div>
    344. </div>
    345. </li>
    346. </ul>
    347. </div>
    348. <div class="block-title">Validation + Additional Info</div>
    349. <div class="list no-hairlines-md">
    350. <ul>
    351. <li class="item-content item-input item-input-with-info">
    352. <div class="item-media">
    353. <i class="icon demo-list-icon"></i>
    354. </div>
    355. <div class="item-inner">
    356. <div class="item-title item-label">Name</div>
    357. <div class="item-input-wrap">
    358. <input type="text" placeholder="Your name" required validate>
    359. <span class="input-clear-button"></span>
    360. <div class="item-input-info">Default "required" validation</div>
    361. </div>
    362. </div>
    363. </li>
    364. <li class="item-content item-input item-input-with-info">
    365. <i class="icon demo-list-icon"></i>
    366. </div>
    367. <div class="item-inner">
    368. <div class="item-title item-label">Fruit</div>
    369. <div class="item-input-wrap">
    370. <input type="text" placeholder="Type 'apple' or 'banana'" required validate pattern="apple|banana">
    371. <span class="input-clear-button"></span>
    372. <div class="item-input-info">Pattern validation (<b>apple|banana</b>)</div>
    373. </div>
    374. </div>
    375. </li>
    376. <li class="item-content item-input item-input-with-info">
    377. <div class="item-media">
    378. <i class="icon demo-list-icon"></i>
    379. </div>
    380. <div class="item-inner">
    381. <div class="item-title item-label">E-mail</div>
    382. <div class="item-input-wrap">
    383. <input type="email" placeholder="Your e-mail" required validate>
    384. <span class="input-clear-button"></span>
    385. <div class="item-input-info">Default e-mail validation</div>
    386. </div>
    387. </div>
    388. </li>
    389. <li class="item-content item-input item-input-with-info">
    390. <div class="item-media">
    391. <i class="icon demo-list-icon"></i>
    392. </div>
    393. <div class="item-inner">
    394. <div class="item-title item-label">URL</div>
    395. <div class="item-input-wrap">
    396. <input type="url" placeholder="Your URL" required validate>
    397. <span class="input-clear-button"></span>
    398. <div class="item-input-info">Default URL validation</div>
    399. </div>
    400. </div>
    401. </li>
    402. <li class="item-content item-input item-input-with-info">
    403. <div class="item-media">
    404. <i class="icon demo-list-icon"></i>
    405. </div>
    406. <div class="item-inner">
    407. <div class="item-title item-label">Number</div>
    408. <div class="item-input-wrap">
    409. <input type="text" placeholder="Enter number" required validate pattern="[0-9]*" data-error-message="Only numbers please!">
    410. <span class="input-clear-button"></span>
    411. <div class="item-input-info">With custom error message</div>
    412. </div>
    413. </div>
    414. </li>
    415. </ul>
    416. </div>
    417. <div class="block-title">Icon + Input</div>
    418. <div class="list no-hairlines-md">
    419. <ul>
    420. <li class="item-content item-input">
    421. <div class="item-media">
    422. <i class="icon demo-list-icon"></i>
    423. </div>
    424. <div class="item-inner">
    425. <div class="item-input-wrap">
    426. <input type="text" placeholder="Your name">
    427. <span class="input-clear-button"></span>
    428. </div>
    429. </div>
    430. </li>
    431. <li class="item-content item-input">
    432. <div class="item-media">
    433. <i class="icon demo-list-icon"></i>
    434. </div>
    435. <div class="item-inner">
    436. <div class="item-input-wrap">
    437. <input type="password" placeholder="Your password">
    438. <span class="input-clear-button"></span>
    439. </div>
    440. </div>
    441. </li>
    442. <li class="item-content item-input">
    443. <div class="item-media">
    444. <i class="icon demo-list-icon"></i>
    445. </div>
    446. <div class="item-inner">
    447. <div class="item-input-wrap">
    448. <input type="email" placeholder="Your e-mail">
    449. <span class="input-clear-button"></span>
    450. </div>
    451. </div>
    452. </li>
    453. <li class="item-content item-input">
    454. <div class="item-media">
    455. <i class="icon demo-list-icon"></i>
    456. </div>
    457. <div class="item-inner">
    458. <div class="item-input-wrap">
    459. <input type="url" placeholder="URL">
    460. <span class="input-clear-button"></span>
    461. </div>
    462. </div>
    463. </li>
    464. </ul>
    465. </div>
    466. <div class="block-title">Label + Input</div>
    467. <div class="list no-hairlines-md">
    468. <ul>
    469. <li class="item-content item-input">
    470. <div class="item-inner">
    471. <div class="item-title item-label">Name</div>
    472. <div class="item-input-wrap">
    473. <input type="text" placeholder="Your name">
    474. <span class="input-clear-button"></span>
    475. </div>
    476. </div>
    477. </li>
    478. <li class="item-content item-input">
    479. <div class="item-inner">
    480. <div class="item-title item-label">Password</div>
    481. <div class="item-input-wrap">
    482. <input type="password" placeholder="Your password">
    483. <span class="input-clear-button"></span>
    484. </div>
    485. </div>
    486. </li>
    487. <li class="item-content item-input">
    488. <div class="item-inner">
    489. <div class="item-title item-label">E-mail</div>
    490. <div class="item-input-wrap">
    491. <input type="email" placeholder="Your e-mail">
    492. <span class="input-clear-button"></span>
    493. </div>
    494. </div>
    495. </li>
    496. <li class="item-content item-input">
    497. <div class="item-inner">
    498. <div class="item-title item-label">URL</div>
    499. <div class="item-input-wrap">
    500. <input type="url" placeholder="URL">
    501. <span class="input-clear-button"></span>
    502. </div>
    503. </div>
    504. </li>
    505. </ul>
    506. </div>
    507. <div class="block-title">Only Inputs</div>
    508. <div class="list no-hairlines-md">
    509. <ul>
    510. <li class="item-content item-input">
    511. <div class="item-inner">
    512. <div class="item-input-wrap">
    513. <input type="text" placeholder="Your name">
    514. <span class="input-clear-button"></span>
    515. </div>
    516. </div>
    517. </li>
    518. <li class="item-content item-input">
    519. <div class="item-inner">
    520. <div class="item-input-wrap">
    521. <input type="password" placeholder="Your password">
    522. <span class="input-clear-button"></span>
    523. </div>
    524. </div>
    525. </li>
    526. <li class="item-content item-input">
    527. <div class="item-inner">
    528. <div class="item-input-wrap">
    529. <input type="email" placeholder="Your e-mail">
    530. <span class="input-clear-button"></span>
    531. </div>
    532. </div>
    533. </li>
    534. <li class="item-content item-input">
    535. <div class="item-inner">
    536. <div class="item-input-wrap">
    537. <input type="url" placeholder="URL">
    538. <span class="input-clear-button"></span>
    539. </div>
    540. </div>
    541. </li>
    542. </ul>
    543. </div>
    544. <div class="block-title">Inputs + Additional Info</div>
    545. <div class="list no-hairlines-md">
    546. <ul>
    547. <li class="item-content item-input item-input-with-info">
    548. <div class="item-inner">
    549. <div class="item-input-wrap">
    550. <input type="text" placeholder="Your name">
    551. <span class="input-clear-button"></span>
    552. <div class="item-input-info">Full name please</div>
    553. </div>
    554. </div>
    555. </li>
    556. <li class="item-content item-input item-input-with-info">
    557. <div class="item-inner">
    558. <div class="item-input-wrap">
    559. <input type="password" placeholder="Your password">
    560. <span class="input-clear-button"></span>
    561. <div class="item-input-info">8 characters minimum</div>
    562. </div>
    563. </div>
    564. </li>
    565. <li class="item-content item-input item-input-with-info">
    566. <div class="item-inner">
    567. <div class="item-input-wrap">
    568. <input type="email" placeholder="Your e-mail">
    569. <span class="input-clear-button"></span>
    570. <div class="item-input-info">Your work e-mail address</div>
    571. </div>
    572. </div>
    573. </li>
    574. <li class="item-content item-input item-input-with-info">
    575. <div class="item-inner">
    576. <div class="item-input-wrap">
    577. <input type="url" placeholder="URL">
    578. <span class="input-clear-button"></span>
    579. <div class="item-input-info">Your website URL</div>
    580. </div>
    581. </div>
    582. </li>
    583. </ul>
    584. </div>
    585. <div class="block-title">Only Inputs Inset</div>
    586. <div class="list inset">
    587. <ul>
    588. <li class="item-content item-input">
    589. <div class="item-inner">
    590. <div class="item-input-wrap">
    591. <input type="text" placeholder="Your name">
    592. <span class="input-clear-button"></span>
    593. </div>
    594. </div>
    595. </li>
    596. <li class="item-content item-input">
    597. <div class="item-inner">
    598. <div class="item-input-wrap">
    599. <input type="password" placeholder="Your password">
    600. <span class="input-clear-button"></span>
    601. </div>
    602. </div>
    603. </li>
    604. <li class="item-content item-input">
    605. <div class="item-inner">
    606. <div class="item-input-wrap">
    607. <input type="email" placeholder="Your e-mail">
    608. <span class="input-clear-button"></span>
    609. </div>
    610. </div>
    611. </li>
    612. <li class="item-content item-input">
    613. <div class="item-inner">
    614. <div class="item-input-wrap">
    615. <input type="url" placeholder="URL">
    616. <span class="input-clear-button"></span>
    617. </div>
    618. </div>
    619. </li>
    620. </div>