Я думаю, что было бы лучше использовать класс CSS:
<div class="social">
<label for="social1" class="s1">Social 1</label>
<input type="text id="social1" name="social1" />
<label for="social2" class="s2">Social 2</label>
<input type="text id="social2" name="social2" />
</div>
Таким образом, вы могли бы применить фон, как это:
.social {
display: block;
width: 50px;
height: 50px;
background-repeat: no-repeat;
}
.social .s1{
background-image: url("social1.gif");
}
.social .s2{
background-image: url("social2.gif");
}
Я не удалять текст с этикеток. Таким образом, пользователи смогут выбрать этот текст, но все равно будут выглядеть как изображение (с соответствующим фоном).
Но если вы действительно хотите придерживаться изображений только тогда вы можете использовать этот подход:
<div class="social">
<label for="social1" class="s1">
<img alt="Social 1" src="img/social1.gif" />
</label>
<input type="text id="social1" name="social1" />
<label for="social2" class="s2">
<img alt="Social 2" src="img/social2.gif" />
</label>
<input type="text id="social2" name="social2" />
</div>
и отвечая на ваш вопрос, я думаю, что это нормально, чтобы иметь изображения с альтернативным текстом.
Hi Dmitriy, Благодарим Вас за отзыв. Это все равно отображает текст на этикетке? Должен ли текст каким-то образом скрываться? Я хотел бы показывать только логотипы. Спасибо, Jack – Jackson
Нет. Я предпочитаю отображать текст поверх фонового изображения. Это нечто более доступное. Я обновил ответ для вас, если вы действительно хотите иметь изображение без текста. –