Personalization (but without storing personal info )Social Input / Wisdom-of-Crowds (which has its pitfalls )Semantic Processing: of both, the query AND the content(will this let the Search Engine find Answers that we never knew we had?)Parametric Input: including freshness, source and domain-specificRich content types: audio, video, images, news, blogs, Ä¶UI enhancements: better visualization of resultsFindability support: notifications of interest, a database of intentionsFollow-up: results clustering and drill-downRepeat queries (as Greg Linden points out )Trusted sources: e.g. a slider to select the level of trust, from high to lowCheck out the full article and leave a comment on AltSearchEngines about what you think a search engine is – and what it’ll be in the future. Why Tech Companies Need Simpler Terms of Servic… A Web Developer’s New Best Friend is the AI Wai… Tags:#search#web Read/WriteWeb network blog AltSearchEngines has launched a fascinating series today. It’s a 3-part series attempting to define what is a search engine. While it’s focused on 2007, the series will also address what a search engine might look like in the future. The first part, entitled What is a Search Engine?, is written by Nitin Karandikar. Part II is entitled What is Not a Search Engine? by Kaila Colbin and will be published tomorrow on ASE. The trilogy will be complete with Charles Knight’s Part III: What is an Alternative Search Engine? on Wednesday.Any of you who have followed closely Charles Knight’s Top 100 Alternative Search Engines List will enjoy this series. Here is Nitin’s list of essential search engine features for the future: Related Posts richard macmanus Top Reasons to Go With Managed WordPress Hosting 8 Best WordPress Hosting Solutions on the Market
Related Posts Tags:#web Top Reasons to Go With Managed WordPress Hosting Why Tech Companies Need Simpler Terms of Servic… This week’s feature is inspired by Alex Iskold’s recent post on what he called The Digestion Phase. Alex defined this as “a period of time for us to reflect, to integrate, and to understand recent technologies and how they fit together.”We’ve come so far in just a few years and while there’s a lot of integration and reflection going on now about ‘web 2.0’, it’s also useful to think about where the Web is headed. What’s beyond web 2.0? And no we’re not talking about “web 3.0” (whatever that is!).Alex mentioned some Web Future ideas in his post: Digital Life, Attention Economy,Intelligent Machines, Semantic Search and Web Sites as Web Services. What others are there? And if there’s any particular Web Future topic or theme you’d like us to explore this week, please let us know in the comments. A Web Developer’s New Best Friend is the AI Wai… 8 Best WordPress Hosting Solutions on the Market richard macmanus
Depiction of the CSS Box Model in CSS1The four margin properties for each side of the box and the margin shorthand were all defined in CSS1.The CSS2.1 specification has an illustration to demonstrate the Box Model and also defines terms we still use to describe the various boxes. The specification describes the content box, padding box, border box, and margin box, each being defined by the edges of the content, padding, border, and margin respectively. Posted on 15th July 2019Web Design FacebookshareTwittertweetGoogle+share Everything You Need To Know About CSS Margins Everything You Need To Know About CSS Margins Rachel Andrew 2019-07-15T12:30:59+02:00 2019-07-15T12:36:09+00:00One of the first things most of us learned when we learned CSS, was details of the various parts of a box in CSS, described as The CSS Box Model. One of the elements in the Box Model is the margin, a transparent area around a box, which will push other elements away from the box contents. The margin-top, margin-right, margin-bottom and margin-left properties were described right back in CSS1, along with the shorthand margin for setting all four properties at once.A margin seems to be a fairly uncomplicated thing, however, in this article, we will take a look at some of the things which trip people up with regard to using margins. In particular, we will be looking at how margins interact with each other, and how margin collapsing actually works.The CSS Box ModelAs with all articles about parts of the CSS Box Model, we should define what we mean by that, and how the model has been clarified through versions of CSS. The Box Model refers to how the various parts of a box — the content, padding, border, and margin — are laid out and interact with each other. In CSS1, the Box Model was detailed with the ASCII art diagram shown in the image below. DepvTools can help you see where your margin ends upOnly Block Margins CollapseThe last example also highlights something about margin collapsing. In CSS2, only vertical margins are specified to collapse — that is the top and bottom margins on an element if you are in a horizontal writing mode. So the left and right margins above are not collapsing and ending up outside the wrapper.Note: It is worth remembering that margins only collapse in the block direction, such as between paragraphs.Things Which Prevent Margin CollapsingMargins never collapse if an item has absolute positioning, or is floated. However, assuming you have run into one of the places where margins collapse outlined above, how can you stop those margins collapsing?The first thing that stops collapsing is situations where there is something between the elements in question.For example, a box completely empty of content will not collapse it’s top and bottom margin if it has a border, or padding applied. In the example below I have added 1px of padding to the box. There is now a 50-pixel margin above and below the box.See the Pen [Margins: empty boxes with padding do not collapse](https://codepen.io/rachelandrew/pen/gNeMpg) by Rachel Andrew. See the Pen Margins: empty boxes with padding do not collapse by Rachel Andrew.This has logic behind it, if the box is completely empty with no border or padding, it is essentially invisible. It might be an empty paragraph element thrown into the markup by your CMS. If your CMS was adding redundant paragraph elements, you probably wouldn’t want them to cause large gaps between the other paragraphs due to their margins being honored. Add anything to the box, and you will get those gaps.Similar behavior can be seen with margins on first or last children which collapse through the parent. If we add a border to the parent, the margins on the children stay inside.See the Pen [Margins: margin on first and last child doesn’t collapse if the parent has a border](https://codepen.io/rachelandrew/pen/vqRKKX) by Rachel Andrew. See the Pen Margins: margin on first and last child doesn’t collapse if the parent has a border by Rachel Andrew.Once again, there is some logic to the behavior. If you have wrapping elements for semantic purposes that do not display visually, you probably don’t want them to introduce big gaps in the display. This made a lot of sense when the web was mostly text. It is less useful as behavior when we are using elements to lay out a design.Creating a Block Formatting ContextA new Block Formatting Context (BFC) will also prevent margin collapsing through the containing element. If we look again at the example of the first and last child, ending up with their margins outside of the wrapper, and give the wrapper display: flow-root, thus creating a new BFC, the margins stay inside.See the Pen [Margins: a new Block Formatting Context contains margins](https://codepen.io/rachelandrew/pen/VJXjEp) by Rachel Andrew. See the Pen Margins: a new Block Formatting Context contains margins by Rachel Andrew.To find out more about display: flow-root, read my article “Understanding CSS Layout And The Block Formatting Context”. Changing the value of the overflow property to auto will have the same effect, as this also creates a new BFC, although it may also create scrollbars that you didn’t want in some scenarios.Flex And Grid ContainersFlex and Grid containers establish Flex and Grid formatting contexts for their children, so they have different behavior to block layout. One of those differences is that margins do not collapse:“A flex container establishes a new flex formatting context for its contents. This is the same as establishing a block formatting context, except that flex layout is used instead of block layout. For example, floats do not intrude into the flex container, and the flex container’s margins do not collapse with the margins of its contents.”— Flexbox Level 1If we take the example above and make the wrapper into a flex container, displaying the items with flex=direction: column, you can see that the margins are now contained by the wrapper. Additionally, margins between adjacent flex items do not collapse with each other, so we end up with 100 pixels between flex items, the total of the 50 pixels on the top and bottom of the items.See the Pen [Margins: margins on flex items do not collapse](https://codepen.io/rachelandrew/pen/mZxreL) by Rachel Andrew. See the Pen Margins: margins on flex items do not collapse by Rachel Andrew.Margin Strategies For Your SiteDue to margin collapsing, it is a good idea to come up with a consistent way of dealing with margins in your site. The simplest thing to do is to only define margins on the top or bottom of elements. In that way, you should not run into margin collapsing issues too often as the side with a margin will always be adjacent to a side without a margin.Note: Harry Roberts has an excellent post detailing the reasons why setting margins only in one direction is a good idea, and not just due to solving collapsing margin issues.This solution doesn’t solve the issues you might run into with margins on children collapsing through their parent. That particular issue tends to be less common, and knowing why it is happening can help you come up with a solution. An ideal solution to that is to give components which require it display: flow-root, as a fallback for older browsers you could use overflow to create a BFC, turn the parent into a flex container, or even introduce a single pixel of padding. Don’t forget that you can use feature queries to detect support for display: flow-root so only old browsers get a less optimal fix.Most of the time, I find that knowing why margins collapse (or didn’t) is the key thing. You can then figure out on a case-by-case basis how to deal with it. Whatever you choose, make sure to share that information with your team. Quite often margin collapsing is a bit mysterious, so the reason for doing things to counter it may be non-obvious! A comment in your code goes a long way to help — you could even link to this article and help to share the margin collapsing knowledge.I thought that I would round up this article with a few other margin-related pieces of information.Percentage MarginsWhen you use a percentage in CSS, it has to be a percentage of something. Margins (and padding) set using percentages will always be a percentage of the inline size (width in a horizontal writing mode) of the parent. This means that you will have equal-sized padding all the way around the element when using percentages.In the CodePen example below, I have a wrapper which is 200 pixels wide, inside is a box which has a 10% margin, the margin is 20 pixels on all sides, that being 10% of 200.See the Pen [Margins: percentage margins](https://codepen.io/rachelandrew/pen/orqzrP) by Rachel Andrew. See the Pen Margins: percentage margins by Rachel Andrew.Margins In A Flow-Relative WorldWe have been talking about vertical margins throughout this article, however, modern CSS tends to think about things in a flow relative rather than a physical way. Therefore, when we talk about vertical margins, we really are talking about margins in the block dimension. Those margins will be top and bottom if we are in a horizontal writing mode, but would be right and left in a vertical writing mode written left to right.Once working with logical, flow relative directions it becomes easier to talk about block start and block end, rather than top and bottom. To make this easier, CSS has introduced the Logical Properties and Values specification. This maps flow relative properties onto the physical ones.For margins, this gives us the following mappings (if we are working in English or any other horizontal writing mode with a left-to-right text direction).margin-top = margin-block-startmargin-right = margin-inline-endmargin-bottom = margin-block-endmargin-left = margin-inline-startWe also have two new shorthands which allow for the setting of both blocks at once or both inline.margin-blockmargin-inlineIn the next CodePen example, I have used these flow relative keywords and then changed the writing mode of the box, you can see how the margins follow the text direction rather than being tied to physical top, right, bottom, and left.See the Pen [Margins: flow relative margins](https://codepen.io/rachelandrew/pen/BgrQRj) by Rachel Andrew. See the Pen Margins: flow relative margins by Rachel Andrew.You can read more about logical properties and values on MDN or in my article “Understanding Logical Properties And Values” here on Smashing Magazine.To Wrap-UpYou now know most of what there is to know about margins! In short:Margin collapsing is a thing. Understanding why it happens and when it doesn’t will help you solve any problems it may cause.Setting margins in one direction only solves many margin related headaches.As with anything in CSS, share with your team the decisions you make, and comment your code.Thinking about block and inline dimensions rather than the physical top, right, bottom and left will help you as the web moves towards being writing mode agnostic. (il)From our sponsors: Everything You Need To Know About CSS Margins HomeWeb DesignEverything You Need To Know About CSS Margins Depection of the CSS Box Model in CSS2There is now a Level 3 Box Model specification as a Working Draft. This specification refers back to CSS2 for the definitions of the Box Model and margins, therefore it is the CSS2 definition we will be using for the majority of this article.Margin CollapsingThe CSS1 specification, as it defined margins, also defined that vertical margins collapse. This collapsing behavior has been the source of margin-related frustration ever since. Margin collapsing makes sense if you consider that in those early days, CSS was being used as a documenting formatting language. Margin collapsing means that when a heading with a bottom margin, is followed by a paragraph with a top margin, you do not get a huge gap between those items.When margins collapse, they will combine so that the space between the two elements becomes the larger of the two margins. The smaller margin essentially ending up inside the larger one.Margins collapse in the following situations:Adjacent siblingsCompletely empty boxesParent and first or last child elementLet’s take a look at each of these scenarios in turn, before looking at the things which prevent margins from collapsing in these scenarios.Adjacent SiblingsMy initial description of margin collapsing is a demonstration of how the margins between adjacent siblings collapse. Other than in the situations mentioned below, if you have two elements displaying one after the other in normal flow, the bottom margin of the first element will collapse with the top margin of the following element.In the CodePen example below, there are three div elements. The first has a top and bottom margin of 50 pixels. The second has a top and bottom margin of 20px. The third has a top and bottom margin of 3em. The margin between the first two elements is 50 pixels, as the smaller top margin is combined with the larger bottom margin. The margin between the second two elements in 3em, as 3em is larger than the 20 pixels on the bottom of the second element.See the Pen [Margins: adjacent siblings](https://codepen.io/rachelandrew/pen/OevMPo) by Rachel Andrew. See the Pen Margins: adjacent siblings by Rachel Andrew.Completely Empty BoxesIf a box is empty, then it’s top and bottom margin may collapse with each other. In the following CodePen example, the element with a class of empty has a top and bottom margin of 50 pixels, however, the space between the first and third items is not 100 pixels, but 50. This is due to the two margins collapsing. Adding anything to that box (even padding) will cause the top and bottom margins to be used and not collapse.See the Pen [Margins: empty boxes](https://codepen.io/rachelandrew/pen/JQLGMr) by Rachel Andrew. See the Pen Margins: empty boxes by Rachel Andrew.Parent And First Or Last Child ElementThis is the margin collapsing scenario which catches people out most often, as it does not seem particularly intuitive. In the following CodePen, I have a div with a class of wrapper, and I have given that div an outline in red so that you can see where it is. The three child elements all have a margin of 50 pixels. However, the first and last items are flush with the edges of the wrapper; there is not a 50-pixel margin between the element and the wrapper.See the Pen [Margins: margin on first and last child](https://codepen.io/rachelandrew/pen/BgrKGp) by Rachel Andrew. See the Pen Margins: margin on first and last child by Rachel Andrew.This is because the margin on the child collapses with any margin on the parent thus ending up on the outside of the parent. You can see this if you inspect the first child using DevTools. The highlighted yellow area is the margin. Everything You Need To Know About CSS MarginsYou are here: Related postsInclusive Components: Book Reviews And Accessibility Resources13th December 2019Should Your Portfolio Site Be A PWA?12th December 2019Building A CSS Layout: Live Stream With Rachel Andrew10th December 2019Struggling To Get A Handle On Traffic Surges10th December 2019How To Design Profitable Sales Funnels On Mobile6th December 2019How To Build A Real-Time Multiplayer Virtual Reality Game (Part 2)5th December 2019
HyVee is now facing a class action lawsuit over that data breach.The suit filed this week says customers who had their credit card info stolen deserve to recover damages because of negligence by the grocery store chain.HyVee says the breach may affect you if you paid with a card at the gas pump or at the in-store restaurant at Columbia’s West Broadway and Conley Road locations. The fuel pumps at the West Truman Boulevard store in Jefferson City were also in the breach between last December and this July. Get more info here.Columbia native Dustin Murray is one of the people named in the lawsuit. It says he eats at the in-store restaurant about 2-3 times per month, and his debit card data was compromised.
The Board of Control for Cricket in India has suspended the Rajasthan Cricket Association (RCA) whose new body has been just elected with Lalit Modi as its president on Tuesday.Lalit Modi defeated his opponent Rampal Sharma by a landslide margin of 26-7.Mehmood Abidi, newly-elected vice president, has termed it suspension arbitrary and questioned fairness of acting BCCI president Shivlal Yadav.”We expected a fair decision from him but he has acted like a stooge of N. Srinivasan, harming RCA like never before,” Abidi told India Today.”You may suspend an individual member but suspending an entire state association is ridiculous,” he said, but added that he was yet to see the notice of suspension.Lalit Modi is expected to address his team through video conference in the afternoon as he returns as president of RCA, five years after he lost in March 2009.He said through his victory in RCA , he wanted to prove a point to N.Srinivasan.Will Modi return to India?His return to India will be easier if a BJP government comes to power despite senior leader Arun Jaitley known to be against him in BCCI.Modi’s passport remains impounded but cases against him are expected to be diluted.Rajasthan Chief Minister Vasundhara Raje had been instrumental in his rise but this time, she will help him while keeping him away from her administration.Modi was accused of interfering in her administration by Congress leader Ashok Gehlot during her previous tenure between 2003 and 2008, an allegation never substantiated.advertisementThis was in strong contrast to when then Chief Minister Ashok Gehlot ordered police to hound Modi on RCA premises, threaten him with arrest and encouraged his opponents who lodged a series of cases against him and involved the entire state machinery to ensure that Modi lost.Modi lost to Sanjay Dixit in March but Gehlot got re-elections held in December as his close aide Shiv Charan Mali, RCA general secretary, could not get along with Modi. Modi again lost, this time to CP Joshi, then union minister and present AICC general secretary.Modi’s fortune to rise againElection of the 24-member Modi team was a foregone conclusion. Abidi and Amin Pathan, both close aides of Modi, have been elected as the vice president and Somendra Tiwari as secretary.So was the foregone conclusion about the BCCI threat to act against RCA if Modi, expelled for life, was elected chief. RCA says it will move court against the BCCI suspension orders on grounds that its elections were under the Rajasthan Sports Act and not governed by BCCI’s orders.The BCCI has already stopped most of its financial grant to the RCA. Despite the suspension, the victory marks a change for better in Modi’s fortune, whose emergence in Indian cricket had started with his becoming RCA chief in 2004, ending the regime of the Rungta family.The elections were held on December 19 in an extreme peaceful atmosphere with Raje as the chief minister.For Modi, it is a long legal battle ahead before he gets actively into BCCI affairs. Modi, in the small period of less than five years, made Rajasthan a name on the international scene by improving facilities to world class level, something that was never even attempted earlier.He had the backing of then Chief Minister Vasundhara Raje , whose defeat in 2008 also expedited Modi’s decline. Raje wanted to show that things in sports could be improved quickly and through Modi, succeeded in proving that.Modi went further and floated the Indian Premier league and launched a cricket team named after Rajasthan, Rajasthan Royals.However, his rise and flamboyant style led to some vested interests in Rajasthan turning against him.His staying away from India and Rajasthan has exposed all those who thought they could match what Modi did.