Подтвердить что ты не робот

Правильно ли добавить тег <span> внутри тега <a>?

Мне было интересно, можно ли добавить тег span внутри тега....

<h2 style="text-align: left;"><a href="mydomain.com"><span style="font-weight: bold;">Dog dresses</span></a><br></h2>

Правильно ли указан этот метод? Безопасно ли использовать...???

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

<h2><a href="mydomain" class="bold">Dog dresses</a></h2>

.bold {font-weight: bold; }

ИЛИ

<h2 class="bold"><a href="mydomain">Dog dresses</a></h2>

h2.bold a { font-weight: bold; }

Пожалуйста, поделитесь своими мнениями.

4b9b3361

Ответ 1

Да, все в порядке. <span> является встроенным элементом. Если вы не добавите css display: block; к нему, он может перейти в <a>.

Ответ 2

Обе формы являются законными. (<a> внутри <span> или <span> внутри <a/>)

<a><div></div></a> 
<!-- illegal < HTML 5, you cannot put block level tags in an <a> -->
<!-- legal in HTML 5 -->

НО, обычно я бы использовал только <span> внутри <a>, потому что есть некоторый контент, который нуждается в особом лечении

<a href="#">this is <span class="lookatme">special and needs treatment</span></a>

Это бессмысленно (для меня:-))

<a href="#"><span class="lookatme">some text</span></a>

Это обычно будет

<a href="#" class="lookatme">some text</a>

Я обычно думаю с тегами <heading>, <a> должен находиться внутри <heading>, но я не думаю, что неправильно делать обратный

Ответ 3

Пока этот код действителен, это не лучший способ сделать это.

Здесь ваш код снова, с отступом для ясности

<h2 style="text-align: left;">
    <a href="mydomain.com">
        <span style="font-weight: bold;">Dog dresses</span>
    </a>
    <br>
</h2>

Первое, что нужно заметить - у вас есть trailing <br>. Для чего? Дополнительный интервал? Вместо этого используйте padding!

Во-вторых, вам не нужен элемент span - жирный стиль можно применить непосредственно к тегу <a>.

Почему бы просто не написать его так:

<h2 style="text-align: left; padding-bottom: 1em">
    <a href="http://mydomain.com" style="font-weight: bold">Dog dresses</a>
</h2>

Ответ 5

Это законно и безопасно. Вы всегда можете проверить свою разметку в бесплатной службе валидации организации w3: http://validator.w3.org/check

Ответ 6

Если память работает правильно, да, вам разрешено иметь <span> внутри <a> и <a> внутри <h2>. Где вы определяете свой класс, зависит от вас; поместите его там, где это имеет смысл.

Вы можете проверить, действительно ли вы написали допустимый HTML здесь, но не слишком беспокоитесь, если он не проверяется до тех пор, пока он корректно отображается во всех известных браузерах.

Ответ 7

Я бы предпочел использовать CSS, а не использовать внутри. Это уменьшает сложность HTML-кода, снижает нагрузку на браузер, не создавая сложную структуру. Легко захватить с помощью JavaScript.