Ответ 1
Да, все в порядке. <span>
является встроенным элементом. Если вы не добавите css display: block;
к нему, он может перейти в <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; }
Пожалуйста, поделитесь своими мнениями.
Да, все в порядке. <span>
является встроенным элементом. Если вы не добавите css display: block;
к нему, он может перейти в <a>
.
Обе формы являются законными. (<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>
, но я не думаю, что неправильно делать обратный
Пока этот код действителен, это не лучший способ сделать это.
Здесь ваш код снова, с отступом для ясности
<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>
Совершенно правомерно иметь тег span
внутри тега a
.
Также читайте это:
Пространство внутри анкера или анкера внутри пролета или не имеет значения?
Это законно и безопасно. Вы всегда можете проверить свою разметку в бесплатной службе валидации организации w3: http://validator.w3.org/check
Если память работает правильно, да, вам разрешено иметь <span>
внутри <a>
и <a>
внутри <h2>
. Где вы определяете свой класс, зависит от вас; поместите его там, где это имеет смысл.
Вы можете проверить, действительно ли вы написали допустимый HTML здесь, но не слишком беспокоитесь, если он не проверяется до тех пор, пока он корректно отображается во всех известных браузерах.
Я бы предпочел использовать CSS, а не использовать внутри. Это уменьшает сложность HTML-кода, снижает нагрузку на браузер, не создавая сложную структуру. Легко захватить с помощью JavaScript.