这是我的HTML代码:
<label for="tx_alterneteducationcatalog_subscriberadd[newSubscriber][gender]"
class="error" id="tx_alterneteducationcatalog_subscriberadd[newSubscriber]
[gender]-error">This field is required.</label>
这是我的css代码:
#tx_alterneteducationcatalog_subscriberadd[newSubscriber][gender]-error{
display: none !important
}
出于某种原因,浮动权不起作用。即使在萤火虫中也没有表明我放了float:right !important
。为什么呢?
答案 0 :(得分:3)
选择器
#tx_alterneteducationcatalog_subscriberadd[newSubscriber][gender]-error
无效。方括号表示属性选择器,所以你拥有的是
#tx_alterneteducationcatalog_subscriberadd
[newSubscriber]
[gender]
...其次是-error
中的语法错误,因为在那里不会出现标识符。
如果转义所有方括号,将正确解析整个ID选择器:
#tx_alterneteducationcatalog_subscriberadd\[newSubscriber\]\[gender\]-error
...但我更喜欢使用属性选择器来匹配ID:
[id="tx_alterneteducationcatalog_subscriberadd[newSubscriber][gender]-error"]
您也可以选择for
属性和.error
类而不是id
,但我不清楚为什么会在{{1}中标记验证错误首先是元素。例如,该文本完全没有说明它正是“标记”的字段;它只是表明它是必需的。
我刚注意到您的label
属性中有换行符。如果这是您的实际标记的确切显示方式,那么您的标记无效。话虽如此,您仍然可以使用转义序列id
在CSS中对其进行说明(请参阅规范的section 4.3.7):
\a
#tx_alterneteducationcatalog_subscriberadd\[newSubscriber\]\a\[gender\]-error
答案 1 :(得分:1)
因为[]
用于表示CSS选择器中的属性,所以除非使用属性选择器匹配字符串,否则不能将它们用作类名或ids:
*[id="a[b]-c(d)"]{ color: yellow; }
&#13;
<div id="a[b]-c(d)">Selected</div>
&#13;
不推荐这样做,最好使用类,并将它们约束到相关约定。
答案 2 :(得分:0)
我终于使用此代码设法完成了这项工作:
label[for="tx_alterneteducationcatalog_subscriberadd[newSubscriber][gender]"]{
float: right !important
}
并且存在FTP问题。上传后,它给我一些奇怪的字符。删除后。它的工作原理
答案 3 :(得分:-1)
方括号不是css标识符的有效字符:http://www.w3.org/TR/CSS21/syndata.html#characters