CSS3 选择器(可百度搜索CSS选择器,www.w3school.com.cn)
在CSS 中,选择器是一种模式,用于选择需要添加样式的元素。
"CSS" 列指示该属性是在哪个 CSS 版本中定义的。(CSS1、CSS2 还是 CSS3。)
选择器 | 例子 | 例子描述 | CSS |
.intro | 选择 class="intro" 的所有元素。 | 1 | |
#firstname | 选择 id="firstname" 的所有元素。 | 1 | |
* | 选择所有元素。 | 2 | |
p | 选择所有 <p> 元素。 | 1 | |
div,p | 选择所有 <div> 元素和所有 <p> 元素。 | 1 | |
div p | 选择 <div> 元素内部的所有 <p> 元素。 | 1 | |
div>p | 选择父元素为 <div> 元素的所有 <p> 元素。 | 2 | |
div+p | 选择紧接在 <div> 元素之后的所有 <p> 元素。 | 2 | |
[target] | 选择带有 target 属性所有元素。 | 2 | |
[target=_blank] | 选择 target="_blank" 的所有元素。 | 2 | |
[title~=flower] | 选择 title 属性包含单词 "flower" 的所有元素。 | 2 | |
[lang|=en] | 选择 lang 属性值以 "en" 开头的所有元素。 | 2 |
使用案例:
private void refresh() {
HttpUtil.getComment(business.getReview_list_url(), new Listener<String>() {
@Override
public void onResponse(String arg0) {
Document doc = Jsoup.parse(arg0);
//所有评论的li
Elements allComments = doc.select("div[class=comment-list] li[data-id]");
List<Comment> list = new ArrayList<Comment>();
for(Element element:allComments){
Comment comment = new Comment();
//从element中提取需要的内容,作为comment对象的属性
Elements userinfo = element.select("div[class=pic] img");
comment.setName(userinfo.get(0).attr("title"));
comment.setAvatar(userinfo.get(0).attr("src"));
Elements rating = element.select("div[class=user-info] span");
comment.setRating(rating.get(0).attr("class").split(" ")[1]);//irr-star50
Elements content = element.select(".J_brief-cont");
comment.setContent(content.get(0).text());
Elements images = element.select("div[class=shop-photo] img");
if(images.size()>0){
//评论有配图
int number = images.size();
if(number>3) number = 3;
String[] imgs = new String[number];
for(int i=0;i<number;i++){
imgs[i] = images.get(i).attr("src");
}
comment.setImags(imgs);
}else{
//评论没有配图
comment.setImags(null);
}
Elements price = element.select("div[class=user-info] span[class=comm-per]");
if(price.size()>0){
//写了人均消费
comment.setAvgPrace(price.get(0).text());
}else{
//没写人均消费
comment.setAvgPrace("");
}
Log.d("TAG", "商户的评论:"+comment.toString());
list.add(comment);
}
adapter.addAll(list, true);
adapter.notifyDataSetChanged();
}
});
}