.. index:: ! Styling .. _styling: ======= Styling ======= The contact list renders its markup with the class system of the academic extensions and ships no styling for it. The system, the classes of Bootstrap it keeps and how a site package styles the markup are described once, in the chapter :ref:`Styling of academic_base `. This chapter shows how the markup of this extension is built up. .. _styling-outermost-element: The outermost element ===================== .. list-table:: :header-rows: 1 :widths: 30 35 35 * - Plugin - Content element type - Outermost element * - Contact list - `academiccontacts4pages_list` - `academic-contacts4pages-list` .. _styling-list: The contact list ================ Every contact is rendered as the profile item of :guilabel:`EXT:academic_persons`, inside a grid column of an item list: .. code-block:: html

Role of the contact

…
* With :guilabel:`Group by role`, every role renders an `ace-itemlist` of its own. Its `row` starts with the heading of the role, a :html:`
` around an `ace-title`, before the grid columns. The contacts without a role follow in a last `ace-itemlist` without a heading. A grouped contact does not repeat its role in an `ace-role`. * The profile item is built up as described in the chapter `Styling of academic_persons `__. The grid column is the cell of the contact list and the :html:`
` is the profile. In the list that is not grouped, the role is a :html:`

` in that column, in front of the article. .. _styling-example: An example ========== Rules in the stylesheet of the site package, scoped by the outermost element: .. code-block:: css .academic-contacts4pages-list .ace-role { margin-bottom: 0.25rem; font-weight: 600; } .academic-contacts4pages-list .ace-itemlist + .ace-itemlist { margin-top: 2rem; } The development instances style the contacts with the partial `_academic-persons-list.scss `__, which styles the profile lists of `academic_persons` as well, since a contact renders the same item markup, together with the shared rules of `_academic-base.scss `__, both of the site package `academics_dev_site`, a complete example to copy from. Every contact is rendered through the partial :file:`Contacts/Item.html`, so a project that needs other markup for a contact overrides that one partial rather than the list template.