Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b with .x2 class on this span Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b with .x2 class on this span Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b with .x2 class on this span Data 3c Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c with .x3 class on this span Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c with .x3 class on this span Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c with .x3 class on this span Data 3d
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Mist and sticky header example
Data 1 Data 1a Lorem Ipsum Data 1b Data 1c Data 1d
Data 2 Data 2a Lorem Ipsum Data 2b Data 2c Data 2d
Data 3 Data 3a Lorem Ipsum Data 3b Data 3c Data 3d
Data 4 Data 4a Lorem Ipsum Data 4b Data 4c Data 4d
Data 5 Data 5a Lorem Ipsum Data 5b Data 5c Data 5d
Data 6 Data 6a Lorem Ipsum Data 6b Data 6c Data 6d
Data 7 Data 7a Lorem Ipsum Data 7b Data 7c Data 7d
Data 8 Data 8a Lorem Ipsum Data 8b Data 8c Data 8d
Data 8 Data 8a Lorem Ipsum Data 8b Data 8c Data 8d
Data 10 Data 10a Lorem Ipsum Data 10b Data 10c Data 10d
Data 11 Data 11a Lorem Ipsum Data 11b Data 11c Data 11d
Data 12 Data 12a Lorem Ipsum Data 12b Data 12c Data 12d
Data 13 Data 13a Lorem Ipsum Data 13b Data 13c Data 13d
Data 14 Data 14a Lorem Ipsum Data 14b Data 14c Data 14d
Data 15 Data 15a Lorem Ipsum Data 15b Data 15c Data 15d
Data 16 Data 16a Lorem Ipsum Data 16b Data 16c Data 16d
Data 17 Data 17a Lorem Ipsum Data 17b Data 17c Data 17d
Data 18 Data 18a Lorem Ipsum Data 18b Data 18c Data 18d
Data 19 Data 19a Lorem Ipsum Data 19b Data 19c Data 19d
Data 20 Data 20a Lorem Ipsum Data 20b Data 20c Data 20d
Tables
You can still use a Roseworx table element without the [rwx-table] attribute and it will look the same, just without the Roseworx functionality.
Roseworx components have a scanDOM method which basically rescans the DOM for roseworx components and instantiates them. This is extremely useful for when you are dynamically / conditionally adding components to a page after the page load event or using Javascript frameworks like React or Vue. Simply run rwx.tables.scanDOM().
.slanted class modifier does not work well with long table headers.
A .rwx-table-data row can be an a tag with .no-decoration class if the table row needs to be clickable. (Works well with the .highlightable class on the rwx-table).
Putting the rwx-table attribute on the .rwx-table element will restrict it's height to a configurable size. This will allow the table to be scrollable if it exceeds that height (or it would never be scrollable and would just grow down the page).
This Component extends the functionality of rwxMists
Description
The Roseworx Table Core Component has many different style variations and optional enhancing features such as sticky headers and overflow misting.
Description
Typical HTML tables usually have the issue of not being smoothly responsive. Roseworx tables tackles this by keeping the table at a readable width and height, but when the table is scrollable, it adds a misting to the side/bottom (depending on overflow direction) to allow the user to visually see that the table can be scrolled. In addition to this, when a user does scroll on the table, it will make the table headers stuck to the scroll direction so users can still see what heading a table item comes under when scrolling.
Usage
- Copy the html code and personalise it to your use case.
- table functionality comes with the core files when you import rwx from 'roseworx' so you dont need to do anything extra. Any element with the rwx-table attribute and that follows the correct html structure will automatically have functionality implemented.
- To customise the appearance of the table change these SCSS Variables.
Modifier Classes
Optionally add any of the following modifier classes to the rwx-table element.
- slanted
- vertical
- vertical-line
- highlightable
- full-grid
- dual-headings
- colored
By default, all table data will be equal widths. Optionally adjust this by adding one of the following modifiers classes to the span(s) that need to be bigger.
Configuration Options
Optionally add any of these data attributes to the rwx-table element to configure it a certain way.
data-rwx-table-no-stick This will remove the sticky header functionality from the table.
data-rwx-table-no-mist This will remove the misting functionality from the table.
Useful info
By default, the first span in every .rwx-table-data becomes a header. If .vertical class is present on the .rwx-table element, all spans in the first .rwx-table-data will be used a a header. If a .dual-headings class is present on .rwx-table then both will be used.