Hi Jim,
>> I'm confused as to why the class change from PageBody to PBody is not inherited by subsequent pages
I'm not sure that "inheritance" is a good way to think of web pages. The web browser model (which is a stateless, disconnected, client server model) doesn't really lend itself to "inheritance". Each page is an entity unto itself.
>> and if there is a place where this can be modified.
For all "NetWebPage" procedures you'd need to set it on each procedure. However for browses and forms (which are called as pages) you can set it in one place in the code.
When a "control" (such as a browse or form) is called as a "page" then a property in the WebHandler, called .BodyClass, is used.
Right-Click on the WebHandler procedure and click on "Source".
Search for the .MakePage method.
_Before_ the parent.MakePage call add code to set self.site.bodyclass. For example
self.site.bodyclass = 'PBody'
Cheers
Bruce