We are using Fusion as a base theme with Skinr to set grid widths on blocks as required. For the most part we don't need grid widths on blocks. However, Fusion by default provides a grid width that is proportional to the region divided by total blocks. In our minds this is a very bad fallback and means that we need to manually set a Skinr width for all blocks, 95% of which should be full width. Wouldn't a better fallback option to be NOT giving a block a default grid width?

CommentFileSizeAuthor
#1 fusion-block-grid-width-1277534.patch1.02 KBrickvug

Comments

rickvug’s picture

Status: Active » Needs review
StatusFileSize
new1.02 KB

Attached is a patch to demonstrate what I mean. Perhaps there should be a theme setting for what to do in this case? A review and comments on the approach are appreciated.

sheena_d’s picture

Title: Don't provide a default grid class on blocks if none specified » Make auto-generated block widths optional
Version: 7.x-1.x-dev » 7.x-2.x-dev
Assigned: Unassigned » aquariumtap
Category: task » feature
Status: Needs review » Needs work

I suggest that auto-generated block widths be optional, perhaps on a per-region basis, with the default being ON for all regions except $content.

aquariumtap’s picture

This is something particular to Fusion, so we have to be sensitive to the feature discovery process. Providing a setting as @sheena_d suggests would be useful in that regard, although I question how useful the feature is compared to the potential frustration it takes to discover/understand it. I'd also like to steer away from any magic that makes assumptions about the child theme's layout. It makes sense to me to default to ON for all regions except $content and the sidebars, but only if the region layout sticks to the Fusion default.

The Fusion approach makes certain trade-offs in developer experience to lessen the administrative learning curve, but I'm not sure this feature is good for either camp. Developers will have a WTF moment when trying to figure out why a class was added to their block without their expressed will, and I'm not sure how much administrators care about auto-assignment if they can manually set widths using Accelerator.

sheena_d’s picture

Wanted to post a work-around for a fairly serious issue that occurs because of Fusion's auto-assigned widths in D7.

Since a page's main content is now a block in Drupal 7, it gets wrapped into Fusion's default behavior of automatically sizing all blocks in a region. Obviously, this is not the best solution for a block containing the page's main content and also even more of a hindrance when you consider that the main content area has a dynamic width, and so manually overriding Fusion's width assignment doesn't work, either.

A good work-around for this issue for the time being is to assign the main content block (called "System Main") the full-width skin (grid16-16 or grid12-12 depending on which grid you are using) and then add this bit of CSS to your theme:

#block-system-main {
  max-width: 100%;
}
aquariumtap’s picture

Status: Needs work » Closed (duplicate)

I'm marking as duplicate because the magical grid assignment is going away when Fusion rolls out responsive design. The work has been done but it's been folded in with other tasks. Follow #1311570: META - Making Fusion responsive/adaptive for upcoming details.