2016-11-11 99 views
2

有沒有辦法把所有的元素通過引用一個類:CSS分組元素

例如:

.formres select input[type="file"] input[type="email"] input[type="text"] input[type="password"] { 
    width: 150px; 
} 

這不,雖然工作,我希望所有的元素中的class .formres的寬度爲150.想知道這是否可能,或者是否需要編寫單個值。

PS

我已經知道了逗號方式,

.formres select, .formres input[type="file"], .formres input[type="email"], .formres input[type="text"], .formres input[type="password"] { 
    width: 150px; 
} 

一些其他的方式來做到這一點,一些運營商?這不需要一次又一次的類名。

+0

重新提出您的問題:正如我寫的:使用SASS或LESS,但不能與CSS一起使用。 – Johannes

+0

如果你希望'.formres'類中的所有元素都是'width:150px',那麼你可以使用'.formres * {width:150px; }'。不過,我不確定這是否真的是你想要的。你也可以包含你的HTML嗎?我們需要確切地看到你想要選擇的元素。 – TylerH

+0

同樣,如果你只是想'.formres'內的輸入爲width:150px,那麼就使用'.formres input {width:150px; }' – TylerH

回答

1

你可以寫這樣的:

.formres input[type="file"], .formres input[type="email"], .formres input[type="text"], .formres input[type="password"] { 
    width: 150px; 
} 

此外:

如果你僅僅使用這個類的DIV中的一個或兩個輸入元素不應該得到150像素寬度,可以使用像

.formres input { 
    width: 150px; 
} 
.formres input[type="xxxx"] { 
    width: auto; 
} 

第一將給所有元素爲150px寬,第二個定義/覆蓋一個不獲得爲150px,但默認auto

+0

是的,我已經知道它,但它需要類名稱再次,我有信心,必須有一種方式或運營商來實現這一點,但可悲的是,我認爲這是唯一的方法。 –

+0

如果你不使用任何CSS預處理器,這是在這種情況下唯一的方法。 – n1kkou

+0

難道你不認爲這是非常重要的事情,因爲我只有四個元素一些網站可能有超過數百個元素,需要用類名引用... –

1

我希望所有的類.formres裏面的元素是寬150

我假定你的意思是所有直接子女。

一些其他的方式來做到這一點,由一些運營商?這不需要一次又一次的類名。

是的,你正在尋找的運算符是universal selector,星號(*),它選擇的任何元素。

.formres > * { width: 150px; } 

您也可以考慮使用一個容器內.formres與所需的寬度,並把裏面的input元素。他們將擴大以填充其寬度:

<form class="formres"> 
    <div class="container"> 
    <input type="text"... 

.formres .container { width: 150px; }