为“空”div添加“内容”

时间:2014-02-18 08:14:43

标签: css html5 css3

只有当div中没有​​任何内容时,我才能应用一些文本。我试过跟随CSS但似乎不起作用:

.uploadQueue:empty(:before){content:"Select files to upload.";color:#ccc; font-size:14px;}
.uploadQueue:empty{content:"Select files to upload.";color:#ccc; font-size:14px;}
.uploadQueue:before(:empty){content:"Select files to upload.";color:#ccc;font-size:14px;}

上述所有内容似乎都无效。以下css有效,但我想要的是仅将此应用于“空”div。

.uploadQueue:before{content:"Select files to upload."; color:#ccc; font-size:14px;}

http://jsfiddle.net/gauravgr/AD37D/1/

2 个答案:

答案 0 :(得分:2)

您需要使用伪元素选择器链接伪类:

.uploadQueue:empty::before {
    content:"Select files to upload."; color:#ccc; font-size:14px;
}

请记住,:empty选择器要求元素根本不包含任何内容,包括空文本节点。

答案 1 :(得分:1)

您也可以尝试使用jquery。

    $('.uploadQueue').each(function(){
       if($(this).text()=='') $(this).text('Some Text');
       // if($(this).html() == '') $(this).html('<span>Some html</span>')  // check if div contains any HTML
    });

以下是示例http://jsfiddle.net/AD37D/2/