2010-11-11 2 views
1

Я создаю пользовательскую страницу для динамического сайта, и мне было интересно, есть ли способ заблокировать CSS по умолчанию (общего сайта) от влияния на мою пользовательскую страницу. Нигде на моей пользовательской странице я вызываю по умолчанию .css, но я ДОЛЖЕН ссылку на свой собственный .css для конкретной страницы, над которой я работаю. Некоторые из .css взяты из MY CSS, а другие части изменены CSS для существующего сайта. Я не знал, есть ли способ гарантировать, что страница отвечает только на одну страницу .css. В основном я хочу, чтобы BLOCK из таблицы стилей по умолчанию влиял на мою пользовательскую страницу. Надеюсь, это не слишком многословно и смущает вопрос! Спасибо!Как заблокировать страницу из файла .css?

+0

Это не достаточно информации. Очевидный ответ, основанный на том, что вы нам сказали, - «Не связывайте CSS для существующего сайта на своей странице». Если программное обеспечение для «динамического сайта» * автоматически *, включая другой файл, то этот вопрос относится именно к этому программному обеспечению, и нам потребуется полная информация об этом, чтобы определить, возможно ли и как. – Chuck

ответ

0

У вас в основном есть два варианта. Один из них заключается в том, чтобы просто загрузить их таблицу стилей CSS по умолчанию, сделать ее копию и для каждого определенного стиля, сбросить ее до значения auto или любого другого значения для дизайна вашего сайта. Это будет очень утомительно и не будет работать, если они обновят таблицу стилей, но должны работать.

Другой вариант - использовать javascript для удаления связи стилей со страницей. Пока URL-адрес таблицы стилей, которую вы хотите удалить, остается постоянным, вы должны это сделать. Быстрый поиск Google found the following code сделать это:

function removejscssfile(filename, filetype){ 
var targetelement=(filetype=="js")? "script" : (filetype=="css")? "link" : "none" //determine element type to create nodelist from 
var targetattr=(filetype=="js")? "src" : (filetype=="css")? "href" : "none" //determine corresponding attribute to test for 
var allsuspects=document.getElementsByTagName(targetelement) 
for (var i=allsuspects.length; i>=0; i--){ //search backwards within nodelist for matching elements to remove 
    if (allsuspects[i] && allsuspects[i].getAttribute(targetattr)!=null && allsuspects[i].getAttribute(targetattr).indexOf(filename)!=-1) 
    allsuspects[i].parentNode.removeChild(allsuspects[i]) //remove element by calling parentNode.removeChild() 
} 
} 

removejscssfile("somestyle.css", "css") //remove all occurences "somestyle.css" on page 

По сути, это делает он ищет страницу для любых стилей, а затем проверяет их расположение, и если это соответствует тому, что вы хотите удалить, удаляет эту таблицу стилей. Сценарий, который я нашел, также работает для файлов javascript.

+0

Большое вам спасибо за помощь! Я попробую код javascript! – Ashley

Смежные вопросы