2013-05-28 2 views
0

Я хочу включить веб-страницу в другую, но желательно без iframe, так как я ненавижу полосы прокрутки в середине страницы.объединить две страницы с разными стилями в одну

Допустим, я хочу, чтобы включать в себя как часть B

Я попытался сделать это путем создания DIV на B, где я хотел, чтобы включить затем загрузить страницу с помощью JQuery, как это:

$(document).ready(function() { 
    $('#inv_view').html('loading...').load("{% url 'invoice.invoice.view' invoice.ID %}"); 
}); 

Моя проблема в том, что A использует собственный набор стилей CSS, и они переопределяют стили на B, когда загружен A. Как я могу предотвратить это?

Опять же, я знаю, что это легко сделать с помощью IFRAME, но ... Мех

+0

Это страница B полная страница с разделом '' и все такое? Если это так, это не будет работать так хорошо. Но если страница B - всего лишь фрагмент кода, PHP-приложение будет полезно для этого. –

+0

С загрузкой JavaScript вы, возможно, вообще не загрузили CSS страницы B. Проверьте сетевой регистр в Firebug для Firefox или аналогичный инструмент, если CSS загружен вообще. – HerrSerker

ответ

1

Там не легко сделать это, если вы не контролировать как страницы таблицы стилей.

Если вы это сделаете, просто добавьте все правила с помощью селектора классов.

Поместите этот класс на тег тела в пределах каждого шаблона.

Когда вы тянете одну страницу в другую, просто заверните ее в div с вашим классом.

+0

звучит как простая идея. Не знаю, почему я об этом не думал. Просто оберните все стили A в классе и используйте это :) Спасибо buddy – Eldamir

-1

Вы можете сделать это очень легко через PHP. Вот шаги, которые необходимо предпринять:

1: Измените два файла из .html в .php (это позволит PHP для чтения)

2: В FILEB, где вы хотите включить содержимое из FiLea напишите следующее:

 <?php include 'fileA.php' ?> 

3: В вашем FiLea, удалите <html>, <header> и <body> теги. Просто сохраните содержимое, которое вы хотите передать в файлB.


Чтобы избежать изменений CSS от места, вам нужно будет добавить id «S, где Есть перекрывающиеся конфликты. Другой вариант: вы также можете поместить весь файлA в div. Затем, когда стили перекрывают доступ к div прямо так, как этот пример:

p { 
    font-size:18px; 
} 
#fileA p { 
    font-size:25px; 
} 
+0

Непонятно из моего описания проблемы, но я использую Django с python, поэтому PHP не предпочтительнее :) – Eldamir

+0

Gotcha. Я пропустил тэг django. Извини за это. знак равно – Willow

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