Показать сообщение отдельно

  #1  
Старый 15.12.2008, 14:56
ss88
Участник форума
Регистрация: 27.11.2008
Сообщений: 161
Провел на форуме:
298300

Репутация: 128
По умолчанию

Ты пробовал подключать еще один CSS после первого? По теории и в действительности, одноименные стили заменяются последними одноименными. Т.е.
1-й способ описать стили с такими же именами в файле и подключить его по-порядку после первого
2-й способ
Код HTML:
document.getElementById('kakayatoTabla').className='твой описанный стиль';
Если у таблиц нет id, то выдери их другим способом через DOM, и замена имени стиля, как видишь, поисходит банально. А стиль, в этом случае, можно прописать и в самом html.

Вот, если я правильно понял вопрос, то предлагаю более или менее гибкое решение, которое иллюстрирует все вышесказанное
index.html
PHP код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<
title>Untitled Document</title>
<
link href="skin1.css" rel="stylesheet" type="text/css" />
<
link href="skin2.css" rel="stylesheet" type="text/css" />
<
style type="text/css">
<!--
.
changedTable1 {
    
background-color:#ffffff;
}
.
changedTable2 {
    
background-color:#000;
}
-->
</
style>
</
head>

<
body>

<
script type="text/javascript">
    var 
arStyles=new Array("table1","table2");
    var 
arChangeStyles=new Array("changedTable1","changedTable2");
    function 
changeType()
    {
        
tables=document.getElementsByTagName('table');
        for(
i=0i<tables.length;i++)
        {
            for(
k=0;k<arStyles.length;k++)
            {
                if(
tables.item(i).className==arStyles[k])
                {
                    
tables.item(i).className=arChangeStyles[k];
                    break;
                }
            }
        }
    }
</
script>
<
table width="200" border="1" class="table1">
  <
tr>
    <
td><b>привет от ss88</b></td>
  </
tr>
</
table>
<
table width="200" border="1" class="table2">
  <
tr>
    <
td><b>привет от ss88</b></td>
  </
tr>
</
table>
<
label>
  <
input type="submit" name="button" id="button" value="Change Style"  onclick="changeType()"/>
</
label>
</
body>
</
html
skin1.css
Код:
.table1
{
	background-color:#666;
}

.table2
{
	background-color:#000;
}
skin2.css
Код:
.table1
{
	background-color:#666;
}

.table2
{
	background-color:#000;
}
как видно, skin2.css подключается после первого и именно стили из него будут применены к таблице, потому что они пришли позже всех с такими именами... Функция changeType() найдет все тэги таблиц и заменит имена их стилей (если они описаны в массиве оригинальных стилей arStyles) на стили подмены. Вызов этой функции можно вставить, например, в событие onLoad тэга body.
Извините, если кривой js, я в нем не особо шарю

Последний раз редактировалось ss88; 15.12.2008 в 15:44..
 
Ответить с цитированием