Modifiable Information Portlet Markup Guidelines
General
Modifiable markup should be as simple as possible. Â HTML that has been copied from other sites and pasted into uPortal may not render correctly if the markup depends upon external CSS definitions and/or javascript that is not available to uPortal.
HTML
User interfaces developed for uPortal and portlets should follow Web Development best practices. The starting point in best practice is "Web Standards".
A brief summary of the merits and benefits of Web standards includes:
- Simpler development and maintenance: Using more semantic and structured HTML makes it easier and quicker to understand code created by somebody else.
- Compatibility with future Web browsers: When you use defined standards and valid code you future-proof your documents by reducing the risk of future Web browsers not being able to understand the code you have used.
- Faster download and rendering of Web pages: Less HTML results in smaller file sizes and quicker downloads. Modern Web browsers render pages faster when they are in their standards mode than when they are in their backwards-compatible mode.
- Better accessibility: Semantic HTML, where structure is separated from presentation, makes it easier for screen readers and alternative browsing devices to interpret the content.
- Better search results: The separation of content and presentation makes the content represent a larger part of the total file size. Combined with semantic markup this will improve search results.
- Simpler adaptation: A semantically marked up document can be easily adapted to print and alternative browsing devices, like handheld computers and cellular phones, just by linking to a different CSS file. You can also make site-wide changes to presentation by editing a single file.
Reference Portlet Markup Template
CSS Naming Conventions
Best Practices
- Use classes instead of ids whenever possible
class
=
"portlet-titlebar" rather thanÂ
id=
"portletTitlebar"
- Separate class names by dashes as opposed to underscores
class
=
"portlet-titlebar" rather thanÂ
class
=
"portlet_titlebar"
- Prefix classes with namespace
class
=
"portlet-titlebar" rather thanÂ
class
=
"titlebar"
- Class names should be semantic rather than stylistic
class
=
"portlet-titlebar" rather thanÂ
class
=
"big-red-bar"
Bootstrap CSS
uPortal 4.1x and 5.0 include bootstrap, therefore markup that depends on bootstrap CSS classes should render as expected.
Â
Â