

This simple building block can go a long way towards handling some of the more problematic event management that treeviews require, and can do so more efficiently (when native) than is typically the case with Javascript components. The item is clicked or some kind of toggle is selected. This would be encoded as follows: A visible tag Anything that isn't the summary remains hidden until either In particular, the and elements can be nested in much the same way as (or ) and list tags, but have the advantage of allowing users to show or hide most of a section within a block except for the content of a child element, as shown in Figure 1. However, a new set of tags in HTML5, and a bit of creative CSS work, can make treeview controls surprisingly easy to build. A lot of this disfavor comes down to the complexity in creating dynamic treeviews. Part of this can be attributed to shifting design styles for web pages and web applications that have favored activity streams over hierarchical content, some of it has to do with a move towards data binding facilities that don't necessarily work well with recursive data.

Yet as applications have shifted to the web, the once common treeview control has become more rare. The ability to drill down into a hierarchy of information, and to open and close "folders" made organization of content that may have thousands of entries feasible. Treeview controls were once a staple of desktop applications.
