Ответ 1
Это лучший способ:
$('#content p:first').css('color', 'yellow');
Вот моя проблема.
HTML
<div id="content">
<h1>Headline</h1>
<p>First paragraph that needs to be yellow.</p>
<p>Second paragraph that need not change. :) </p>
<p>Third paragraph that need not change. :) </p>
</div>
Если я использую #content p:first-child {color:yellow; }
, это не сработает, потому что p
не является первым ребёном из content
... h1
является первым родившимся.
Как я могу сделать это, не касаясь кода HTML?
Спасибо!
Все самое лучшее, Cris
Это лучший способ:
$('#content p:first').css('color', 'yellow');
a css3-решение
#content > p:first-of-type { color: yellow; }
вы также можете использовать (CSS, jQuery) nth-of-type
:
#content p:nth-of-type(1) {color:yellow; }
$('#content p:nth-of-type(1)').css('color', 'yellow');
Вместо этого используйте .first()
(или :first
селектор):
$('#content > p').first().css('color', 'yellow');
Поскольку вы отметили его с помощью jQuery, решение на основе jQuery:
$( "# content p: first-child" ). css ({color: "yellow;" });Дел >
EDIT:
$("#content p:nth-child(2)").css({color:"yellow" });
<script>
$(function(){
$('#content p:first').css('color','yellow');
});
</script>
$('#content p').first().css({ color: 'yellow' });
Попробуйте следующее:
$("div p:first")
.css("text-decoration", "underline")
.hover(function () {
$(this).addClass("sogreen");
}, function () {
$(this).removeClass("sogreen");
});
С помощью только CSS вы можете использовать селектор sibling +
следующим образом:
#content h1 + p { color: yellow; }
Это изменит только параграфы сразу после H1s.