2012-02-07 128 views
-4

我有CSS類從一個jquery腳本,將自動獲得名稱: 所以它會像#imgHere01#imgHere22#imgHereSomething#imgHereAnother等 我可以強制CSS來控制所有的人? 像這可以用CSS來完成嗎?

#imgHere_ALL {width:333px;} 

#imgHere_xxx所以它會影響everyclass將imgHere後產生。

我不知道是否有可能與CSS。 也許jQuery?

+0

請格式化你的代碼http://stackoverflow.com/editing-help – BoltClock 2012-02-07 20:10:13

+0

你可以給他們所有的第二類或屬性完全相同的名稱? – 2012-02-07 20:10:37

+0

不,這不能用純CSS完成 – TimWolla 2012-02-07 20:11:31

回答

3

使用CSS的正則表達式選擇:

div[id^='imgHere']{ 
    /** styles */ 
} 

這將選擇所有div S作與 「imgHere」 開頭的ID。但正如所暗示的,更好的做法是給所有元素一個普通的類名稱。

+0

謝謝,那工作! – spanakorizo 2012-02-07 20:22:56

+2

@spanakorizo​​酷。請閱讀[如何接受答案](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)。 – paislee 2012-02-07 20:38:46

2

一個更好的方法是給他們所有的共享類。然後,你可以做這樣的事情:

.imgHere{ 
    width: 333px; 
} 
1

是的,如果他們有一些共同的元素(如類,父母等),那麼你應該能夠使用CSS selectors到他們的風格相同的方式。

即:

.myImages { 
    //Whatever styling you want applied to all 
} 

parent img { 
    //Whatever styling you want applied to all 
} 

你也可以做到這一點與jQuery,但它是簡單的做用CSS。

1

你想用這個CSS類:

.image-all 
{ 
    width: 333px; 
} 

那麼就一定要添加它;但是您創建的圖像:

$('<img />').addClass('image-all'); 

還是讓我們說,你不能添加一個類,因爲它是一個第三方的腳本。那麼也許你可以讓他們在容器:

<div class="image-all"> 
    ... image container 
</div> 

然後在你的CSS:

.image-all img 
{ 
    width: 333px; 
} 
0

我希望我正確認識你,但是這應該是CSS非常簡單。如果你想要一些東西來影響「所有事情」,那麼就給它另一個CSS類。這對於諸如高度和寬度的靜態事物是很好的。

給他們一個班級分享。

0

你可以使用屬性選擇:

img[id="imgHere"] { 
    /* css */ 
} 

該選擇依賴於現代的瀏覽器,雖然如此,即小於9不大可能發揮出色。簡單地添加一個帶有生成id的jQuery腳本的類將會更容易。

0

你可以嘗試這些css selectors

#imgHere ~ something 
#imgHere + something 
div[id^='imgHere'] ~ something 
0

嘗試使用CSS選擇器*[class^=imgHere] { width:333px}。用更具體的CSS選擇器替換*以使其更高效。可以找到CSS選擇器信息here