Jaskinie Podróże Nurki Grafika Mizar Teksty Kulinaria Lemkov Namiary Mapa RSS English
Spelunka Trybików Teksty HTML </form> ... <form> YAC Software
  Wróć

Spis

Charsets

Wykresy

DBExpress

Delphi

HTML

Intraweb

MSTest

PHP

Programowanie

R

Rhino Mocks

Software

Testowanie

Testowanie UI

VB.NET

VCL

WPF

</form> ... <form>
Pracując nad oprogramowaniem YAC Interview Kit / GaduSonda pod Delphi + IntraWeb (VCL for the Web), natknąłem się na drobny problem z wyświetlaniem stron pod Operą. Otóż, jeżeli na formie zagnieżdżone są dwa obiekty typu TIWLayoutMgrHTML (layout manager), jeden np. do renderowania całej strony, drugi do renderowania jej części, wygenerowany HTML zawiera zagnieżdżone tagi <form>.

Firefox i IE7 radzą sobie z tym bez problemów:



jednak pod Operą dostaniem coś takiego:



Dzieje się tak dlatego, że IntraWeb, przy czytaniu zawartości pliku HTML do obiektu typu TIWLayoutMgrHTML, usuwa wszystko przed tagiem <body> i po tagu </body>. Zatem, pozostawia wszystko wewnątrz tych tagów, w tym także definicje form. A te zostają zagnieżdżone w definicjach form rodzica.

Niestety, w TIWLayoutMgrHTML nie znajdziemy właściwości MasterFormTag, którą można znaleźć w TIWTemplateProcessorHTML. Nie można więc w łatwy sposób wyłączyć generowania tego tagu w wynikowym HTMLu. Jednakże jest prosta sztuczka pozwalająca ominąć powyższy problem: w źródłach dziecka (tego szablonu, który jest używany do generowania wewnętrznej części strony), należy dodać </form> zaraz po tagu <body> oraz <form> tuż przed tagiem </body>.

I voila!
Doskonałe renderowanie stron we wszystkich trzech przeglądarkach. :-)

Góra

Komentarze
Kurczę!
Na razie brak komentarzy...

Góra

Dodaj komentarz (pola z gwiazdką są obowiązkowe)
Imię / ksywa *
Mail (pozostanie ukryty) *
Twoja strona
Komentarz (bez tagów) *
Wpisz tekst wyświetlony poniżej *
 

Góra

Tagi

HTML

Intraweb


Podobne strony

Intraweb a MaxConnections

Intraweb jako moduł DSO Apache'a

Intraweb a "Device not supported"

Poprawka slajdów Highslide HTML

Klikanie na linki w JavaScript

Intraweb a SessionTimeout

Używanie TChart w programach Intraweb

Obliczanie pozycji elementów HTML

CSS dla pasków przewijania na stronach i w ramkach