Несколько элементов svg на страницу [дубликат]

/^[+]*[(]{0,1}[0-9]{1,3}[)]{0,1}[-\s\./0-9]*$/g

(123) 456-7890 + (123) 456-7890 + (123) -456-7890 + (123) - 456-7890 + (123) - 456-78-90 123- 456-7890 123.456.7890 1234567890 +31636363634 075-63546725

Это очень свободный вариант, и я предпочитаю держать его таким образом, в основном я использую его в регистрационных формах, где пользователи должны добавьте их номер телефона. Обычно у пользователей возникают проблемы с формами, которые обеспечивают соблюдение строгих правил форматирования, я предпочитаю, чтобы пользователь заполнил номер и формат, который он отображает, или перед тем, как сохранить его в базе данных. http://regexr.com/3c53v

123
задан Deduplicator 11 February 2015 в 00:05
поделиться

3 ответа

Все UA игнорируют атрибут версии, поэтому вы всегда можете отказаться от этого.

Если вы встраиваете свой SVG встроенный в HTML-страницу и обслуживаете эту страницу как text/html, то атрибуты xmlns не являются требуется . Внедрение SVG inline в HTML-документах - это довольно недавняя инновация, которая появилась как часть HTML5.

Если, тем не менее, вы обслуживаете свою страницу как image / svg + xml или application / xhtml + xml или любой другой тип MIME, заставляет пользовательский агент использовать парсер XML, тогда требуются атрибуты xmlns . Это был единственный способ сделать что-то до недавнего времени, поэтому там было много контента.

127
ответ дан Robert Longson 15 August 2018 в 17:20
поделиться
  • 1
    "Все UA игнорируют атрибут версии, поэтому вы всегда можете отказаться от этого. & quot; - но что спецификация должна сказать об этом? «Браузеры позволят вам уйти с этим». (или в какой-то момент) относится ко многим практикам, которые (или были) однозначно неверны. – Mark Amery 27 December 2014 в 20:10
  • 2
    В IE11, если я помещаю <!DOCTYPE svg xmlns="www.w3.org/2000/svg">, это работает, но если я заберу xmlns или измените его на <!DOCTYPE svg xmlns="www.example.com">, это не сработает. Почему это? – Donald Duck 30 January 2015 в 13:05
  • 3
    Может быть, источник цитируется для этого ответа, пожалуйста? – jtheletter 21 May 2015 в 00:31
  • 4
    Я написал значительную часть SVG-кода в Firefox, и я так говорю. Разве это недостаточно хорошо? Если нет, я добавил несколько ссылок. – Robert Longson 21 May 2015 в 06:57
  • 5
    @SC_Chupacabra Да – Robert Longson 22 June 2015 в 20:43

Я хотел бы добавить к обоим ответам, но у меня нет точек, я добавляю новый ответ. В последних тестах в Chrome (версия 63.0.3239.132 (официальная сборка) (64-разрядная версия Windows)) я обнаружил, что:

  1. Для встроенного SVG, который непосредственно вводится в файл HTML, через текстовый редактор или javascript и elm.innerHTML, атрибуты xmlns не нужны, как указано в двух других ответах.
  2. Но для встроенного SVG, загружаемого через javascript и AJAX, существует два варианта: Используйте xhr.responseText и elm.innerHTML. Это не требует xmlns. Используйте xhr.responseXML.documentElement и elm.appendChild() или elm.insertBefore(). Этот метод создания встроенного SVG дает полубеленые результаты без определения основного пространства имен SVG, как в xmlns="http://www.w3.org/2000/svg". & Lt; svg & gt; загружает в HTML, но функции уровня документа, такие как getElementById(), не распознаются в & lt; svg & gt; элемент. Я предполагаю, что это потому, что он использует XMLHttpRequest XML-парсер за пределами HTML.
2
ответ дан jamess 15 August 2018 в 17:20
поделиться

Атрибут xmlns="http://www.w3.org/2000/svg":

  • Требуется для файлов image / svg + xml. 1
  • Дополнительно для встроенного <svg>. 2

Атрибут xmlns:xlink="http://www.w3.org/1999/xlink":

  • Требуется для файлов image / svg + xml с атрибутами xlink:. 1
  • Необязательно для inlined <svg> с атрибутами xlink:. 2

Атрибут version="1.1":

  • Рекомендуется соблюдать стандарты файлов image / svg + xml. 3
  • Видимо, игнорируется каждым пользовательским агентом. 4

1 Интернационализированные идентификаторы ресурсов (RFC3987) 2 Поскольку HTML5 3 Расширяемый язык разметки (XML) 1.0 ] 4 Вероятно, до выпуска более крупных версий.

140
ответ дан ncomputers 15 August 2018 в 17:20
поделиться
  • 1
    Очень четкая информация, хороший ответ. – Semicolon 18 January 2016 в 02:30
  • 2
    Нужно ли быть http или может быть https? – JohannesB 25 May 2017 в 19:27
  • 3
    @JohannesB оба протокола совместимы: D – ncomputers 25 May 2017 в 19:27
  • 4
    Ты уверен в этом? Этот пост Ника Кравера подразумевает что-то еще, поэтому я задал этот вопрос в первую очередь (потому что это показалось мне нелогичным). – JohannesB 26 May 2017 в 10:43
  • 5
    @JohannesB да вот у вас есть inlined пример HTTP HTTPS и файл image / svg + xml с inlined svg с атрибутами атрибутов xlink HTTP HTTPS – ncomputers 26 May 2017 в 15:11
Другие вопросы по тегам:

Похожие вопросы: