Re: passing documents through pages [message #178338 is a reply to message #178334] |
Wed, 06 June 2012 08:34 |
alvaro.NOSPAMTHANX
Messages: 277 Registered: September 2010
Karma:
|
Senior Member |
|
|
El 05/06/2012 22:58, Michael Joel escribió/wrote:
> I am storing a library of documents online (the directly viewable ones
> will be in HTML format - with other formats for the user to choose if
> they wish to download them).
>
> Anyway -
> I have main site with PHP scripts taking user selection and then
> providing the document for reading.
> Since the documents are all stand alone html I want them to be viewed in
> the website - ie. I want the sites menu, banner, and footer displayed
> around the document.
>
> Currently they are simply being read into the site's page but this is
> wrong since this means CSS definitions are being loaded inside the page
> body (not in the header).
>
> I would like to keep the documents stand alone but also bring them in.
> What would be the simplest method to load the document in?
>
> I thought of iframes but I dislike that method. I could place the needed
> CSS definitions in the site's page but then if viewed alone the
> documents would not look right.
>
> Like I said - any opinions?
>
> If it is to complicated then I may just re-adjust the plan and force
> them to be viewed through the site's pages only.
In other words, you want to combine programmatically two complete HTML
documents with their attached styles. It's quite a non-trivial task IMHO.
Your best chance is possibly to start with the library document and
inject your custom HTML boxes plus a link to your custom CSS document.
This can be accomplished with the Document Object Model extension:
http://es2.php.net/dom
You need to make sure that your custom styles are self contained and
have higher priority than other page elements (e.g., if your header uses
black fonts make sure you set an appropriate background colour so it
doesn't depend on the library document's colour). You'll get the best
results if the base document is valid HTML.
If you are more comfortable with JavaScript than with PHP, you can just
inject a <script> tag.
In any case, there's always the risk of breaking documents with complex
layout.
--
-- http://alvaro.es - Álvaro G. Vicario - Burgos, Spain
-- Mi sitio sobre programación web: http://borrame.com
-- Mi web de humor satinado: http://www.demogracia.com
--
|
|
|