Значения атрибутов String в нескольких строках, HTML - программирование
Подтвердить что ты не робот

Значения атрибутов String в нескольких строках, HTML

Можно ли в HTML написать что-то вроде:

<a href="bla bla bla bla\
        bla bla bla bla">....</a>

Идея состоит в том, чтобы разделить атрибут строки в разных строках, чтобы улучшить читаемость.

4b9b3361

Ответ 1

Да, что возможно: fooobar.com/questions/546503/... Секрет заключается в использовании вкладки вместо пробела Также, чтобы использовать linebreaks

<a href="
	bla 
	bla bla 
	bla bla bla 
	bla bla 
	bla
	">....</a>

Ответ 2

Нет, это невозможно. HTML не имеет символа "продолжение строки". Если вы поместили разрыв строки в значение атрибута, поведение браузера изменится, но современные браузеры ведут себя так, как это описано в HTML5: разрешен разрыв строки, и он воспринимается буквально и сохраняется как разрыв строки в DOM. Это означает, что значение атрибута href нарушено и не работает.

Самое лучшее, что вы можете сделать для решения проблемы с длинными значениями href, - это поставить такое значение в отдельной строке без кавычек:

<a href=
http://www.example.com/some-long-path/and-so-on
>link</a>

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

<a href=foo title="Hello
world">bar</a>

Ответ 3

Вы можете сделать это без символа прерывания. Точно так же:

<a href="http://stackoverflow.com
/questions/
22831988/
string-attribute-values-in-multiple-lines-html">
LINK
</a>

DEMO

Ответ 4

Вы можете использовать предложение @laaposto, если между строками нет пробела.

Если вы не хотите следовать этому правилу, вам нужно использовать javascript для удаления пробелов:

var anchor = document.getElementsByTagName("a");

for(var i=0; i<= anchor.length; i++) {
    var href = anchor[i].href.replace(/%20/g,'');
    anchor[i].href = href;     
}

Скриншот Демо

или проще с помощью jQuery:

var href = $('a').attr('href').replace(/ /g,'');
$('a').attr('href', href);

Скриншот Демо

Ответ 5

вы можете писать любым способом, но убедитесь, что между строками нет пробела.

Связать этот

<a href="http://stackoverflow
.com/quest
ions/228319
88/string-attribute-values-in-multiple-lines-html">

Ответ 6

Можно ли использовать PHP? Если это так, вы можете сделать:

<a href="<?= "very "
             ."long "
             ."string" ?>">