| <!DOCTYPE html> |
| <link rel="help" href="https://drafts.csswg.org/css-values-4/#comp-func"> |
| <link rel="help" href="https://drafts.csswg.org/css-values-4/#lengths"> |
| <link rel="help" href="https://drafts.csswg.org/css-values-4/#calc-type-checking"> |
| <link rel="author" title="Xiaocheng Hu" href="mailto:xiaochengh@chromium.org"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="../support/parsing-testcommon.js"></script> |
| <script> |
| function test_invalid_length(value) { |
| // 'letter-spacing' accepts <length> only, not <percentage> or any mixes. |
| test_invalid_value('letter-spacing', value); |
| } |
| |
| // Syntax checking |
| test_invalid_length('min()'); |
| test_invalid_length('min( )'); |
| test_invalid_length('min(,)'); |
| test_invalid_length('min(1py)'); |
| test_invalid_length('min(1px, )'); |
| test_invalid_length('min(, 1px)'); |
| test_invalid_length('min(1px + )'); |
| test_invalid_length('min(1px - )'); |
| test_invalid_length('min(1px * )'); |
| test_invalid_length('min(1px / )'); |
| test_invalid_length('min(1px 2px)'); |
| test_invalid_length('min(1px, , 2px)'); |
| test_invalid_length('max()'); |
| test_invalid_length('max( )'); |
| test_invalid_length('max(,)'); |
| test_invalid_length('max(1py)'); |
| test_invalid_length('max(1px, )'); |
| test_invalid_length('max(, 1px)'); |
| test_invalid_length('max(1px + )'); |
| test_invalid_length('max(1px - )'); |
| test_invalid_length('max(1px * )'); |
| test_invalid_length('max(1px / )'); |
| test_invalid_length('max(1px 2px)'); |
| test_invalid_length('max(1px, , 2px)'); |
| |
| // Type checking |
| test_invalid_length('min(0)'); |
| test_invalid_length('min(0%)'); |
| test_invalid_length('min(0s)'); |
| test_invalid_length('min(0Hz)'); |
| test_invalid_length('min(0dpi)'); |
| test_invalid_length('min(0fr)'); |
| test_invalid_length('min(1px, 0)'); |
| test_invalid_length('min(1px, 0%)'); |
| test_invalid_length('min(1px, 0s)'); |
| test_invalid_length('min(1px, 0Hz)'); |
| test_invalid_length('min(1px, 0dpi)'); |
| test_invalid_length('min(1px, 0fr)'); |
| test_invalid_length('max(0)'); |
| test_invalid_length('max(0%)'); |
| test_invalid_length('max(0s)'); |
| test_invalid_length('max(0Hz)'); |
| test_invalid_length('max(0dpi)'); |
| test_invalid_length('max(0fr)'); |
| test_invalid_length('max(1px, 0)'); |
| test_invalid_length('max(1px, 0%)'); |
| test_invalid_length('max(1px, 0s)'); |
| test_invalid_length('max(1px, 0Hz)'); |
| test_invalid_length('max(1px, 0dpi)'); |
| test_invalid_length('max(1px, 0fr)'); |
| </script> |