Navigation
- News
- Latest News
- Sports
- Longform
- Daily Newsletter
- Weekly Newsletter
- Restaurant Guide
- Restaurant Reviews
- 100 Houston Creatives
- Stage
- Calendar
- Submit an Event
- Movie Times
- HoustonPressArtsGuide.com
- Music
- Latest Music
- Concerts
- Concert Calendar
- Submit a Music Event
- Music Newsletter
- More
- Things to Do/Tickets
- Best of Houston
- Best of Houston Readers' Choice Winners
- Slideshows
- Promotions
- Lists
- Houston Press Careers
- Local Advertising
- Things To Do Newsletter
- Best Of Newsletter
- News
- Latest News
- Sports
- Longform
- Daily Newsletter
- Weekly Newsletter
- Restaurant Guide
- Restaurant Reviews
- 100 Houston Creatives
- Stage
- Calendar
- Submit an Event
- Movie Times
- HoustonPressArtsGuide.com
- Music
- Latest Music
- Concerts
- Concert Calendar
- Submit a Music Event
- Music Newsletter
- More
- Things to Do/Tickets
- Best of Houston
- Best of Houston Readers' Choice Winners
- Slideshows
- Promotions
- Lists
- Houston Press Careers
- Local Advertising
- Things To Do Newsletter
- Best Of Newsletter
Support Us
Houston's independent source of
local news and culture
Lists
Katharine ShilcuttNovember 7, 20126:00AM
Long the bastion of boring chain restaurants and overly expensive hot spots, the Galleria has seen a resurgence in the past few years when it comes to food. Chef-owned-and-driven restaurants are upping the ante along Post Oak Boulevard, while places like E-Tao and White Oak Kitchen + Drinks are showing shoppers that it's possible to have a great meal inside the massive mall itself without splashing out or trudging through the subterranean food court.
And in the surrounding blocks around the Galleria, brand-new eateries like family-owned Adair Kitchen and low-key French bistro Etoile Cuisine et Bar are drawing new fans to the area each day. And while there are still plenty of terrific, inexpensive options to stretch your dining dollar -- Zabak's, Jenni's Noodle House, Cafe Mawal, Chacho's and Jake's Philly Steaks spring to mind as just a few -- today's list of Top 10 restaurants in the Galleria has changed quite a bit since the last time we tackled this part of town...in 2010.
And considering that holiday shopping season is right around the corner, getting reacquainted with some good places to fuel your shopping spree isn't a bad idea.
Disclaimer: Because "the Galleria area" can apparently encompass anything from Highland Village to far-flung stretches of Westheimer, we've tightened up the boundaries for the purposes of this list to keep it clean and compact. For purposes of this Top 10 list, the Galleria is defined as anything west of Loop 610, south of Woodway, east of Fountain View and north of Richmond Avenue.
10. 1252 Tapas
The new Uptown Park location of this suburban import (the other two 1252 Tapas locations are in Cypress and The Woodlands) features a sleek, modern menu of traditional Spanish tapas and a much more urban vibe than its far-flung counterparts. Get the tabla alfonso x if you go with a group so that you can taste 1252's array of excellent Spanish cheeses and cured meats, or get experimental if you go on your own: morcilla (blood sausage) with apple and Dijon mustard sauce and pulpitos en su tinta (baby octopus sautéed in its own ink) are two favorites.
Yes, the Galleria is full of steakhouses -- but none of them are quite like Tango & Malbec. The large, well-appointed restaurant features the cuisine and wines of Argentina and its neighboring South American countries, which means lots of meats grilled on a wood-burning fire. The extensive menu has some Italian influences -- items like the carpaccio, provoleta (grilled provolone), and various pizzas and pasta dishes are all expertly prepared. Meat lovers will adore the bife de lomo (filet steak) and the bife de chorizo (rib eye) as well as the Wagyu beef short ribs. Whatever you do, leave room for the magnificent desserts, such as the torta rogel (dulce de leche cake with meringue), the chocolate soufflé and the profiteroles.
8. E-Tao
In a shopping center saturated with middling fast food and ultra-expensive chains, E-Tao is a welcome happy medium: a low-key, low-cost restaurant with great food. Situated near Nordstrom in the Galleria IV, the newest of the expansions to the gigantic mall, E-Tao serves traditional Sichuan favorites that are far more authentic than one would expect for mall food. While it's gaining a following for its soup dumplings (xiaolongbao), the rice-and-pork-stuffed chicken wings are equally excellent. And if you can't deal with the drive out to Chinatown, E-Tao makes a surprisingly good replacement for the Bellaire Boulevard dumpling houses.
Full text
- 1
- 2
- 3
next
') let lineHeight = jQuery('[line-height-check]').get(0).clientHeight; jQuery('[line-height-check]').remove() if (jQuery(element).prop('tagName').match(/HIDDEN/i) !== null) { jQuery(element).children('div').last().css({ marginBottom: `${lineHeight*2}px` }); } else { jQuery(element).css({ marginTop: `${lineHeight*2}px`, marginBottom: `${lineHeight}px` }); } // const insertionBlockClass = `fdn-paragraph-insertion-block`; const styleElementHook = `fdn-paragraph-insertion-styles`; jQuery(element).addClass(insertionBlockClass); if (jQuery(`[${styleElementHook}]`).length === 0) { jQuery('div.fdn-content-body, div #storyBody').append('
') const paragraphLineHeight = jQuery('[line-height-check]').get(0).clientHeight; jQuery('[line-height-check]').remove() const styleElement = jQuery(`
`); const styleText = ` div.fdn-content-body br+.${insertionBlockClass}:not([hidden]), div #storyBody br+.${insertionBlockClass}:not([hidden]) { margin-top: ${paragraphLineHeight*2}px; margin-bottom: ${paragraphLineHeight}px; } div.fdn-content-body br+.${insertionBlockClass}[hidden] > div:last-of-type, div #storyBody br+.${insertionBlockClass}[hidden] > div:last-of-type { margin-bottom: ${paragraphLineHeight*2}px; } ` styleElement.text(styleText); jQuery('head').append(styleElement); } // } } jQuery(element).insertBefore(this.paragraphEndNodes[index]); } else { console.warn('Foundation.ParagraphTool.insertElemenAt: invalid insertion index', index); } } this.insertElemenAtEnd = function (element) { if (this.paragraphEndNodes.length) { let lastNode = this.getNodeAtIndex(this.paragraphEndNodes.length -1); if (this.isDoubleBrParagraphBreak(lastNode) || this.isBrParagraphBreakBeforeBlockElement(lastNode)) { if (jQuery(element).get(0).tagName.match(/SCRIPT/i) !== null) { jQuery('
').insertAfter(this.paragraphEndNodes[index]); jQuery('
').insertAfter(this.paragraphEndNodes[index]); } else { jQuery('div.fdn-content-body, div #storyBody').append('
') let lineHeight = jQuery('[line-height-check]').get(0).clientHeight; jQuery('[line-height-check]').remove() if (jQuery(element).prop('tagName').match(/HIDDEN/i) !== null) { jQuery(element).children('div').last().css({ marginBottom: `${lineHeight*2}px` }); } else { jQuery(element).css({ marginTop: `${lineHeight*2}px`, marginBottom: `${lineHeight}px` }); } } } } this.bodyContainer.append(element); } this.getNodeAtIndex = function (index) { return this.paragraphEndNodes[index]; } }
`); } var paragraphCount = myParagraphTool.getParagraphEndNodeCount(); // No need to insert if there aren't enough paragaphs if (paragraphCount >= parseInt(item.requiredCountToDisplay)) { // Matches specific paragraph insertion indexes if (item.insertPoint.match(/^\d+$/) !== null) { var insertIndex = parseInt(item.insertPoint) - 1; // Insert within content if (insertIndex < paragraphCount) { myParagraphTool.insertElemenAtIndex(componentElement, insertIndex); } // Append to the end if the insert point is beyond the paragraph count else { myParagraphTool.insertElemenAtEnd(componentElement) } } // Matches for 1/2, 1/4, 2/3, 5/6, etc else if (item.insertPoint.match(/^[1223456]\/[23456]$/) !== null) { var fractionMatch = new RegExp(/^([123456])(?:\/)([23456]$)/); var fractionPart = parseInt(item.insertPoint.match(fractionMatch)[1]); var fractionWhole = parseInt(item.insertPoint.match(fractionMatch)[2]); var fractionValue = fractionPart / fractionWhole; var fractionIndex = Math.floor(myParagraphTool.paragraphEndNodes.length * fractionValue) - 1; myParagraphTool.insertElemenAtIndex(componentElement, fractionIndex); } // Matches for every Nth insertion point else if (item.insertPoint.match(/^\d*th$/i) !== null) { var intervalIndex = parseInt(item.insertPoint.match(/^(\d*)th$/i)[1]); var startingIndex = parseInt(item.startingPoint) - 1; var insertionMax = parseInt(item.maxInsertions) || 100; var insertionCount = 0; for (var i = startingIndex; i < myParagraphTool.paragraphEndNodes.length && insertionCount < insertionMax; i++) { if ((i - startingIndex) % intervalIndex === 0) { let currentNode = myParagraphTool.getNodeAtIndex(i); const clonedComponent = componentElement.clone(); myParagraphTool.insertElemenAtIndex(clonedComponent, i); insertionCount++; } } } } }); Foundation.Content['6422780'].setupInlineComponents = function () { return true; }; if (typeof callback === 'function') { callback(); } }, 200); } Foundation.Content['6422780'].previewInsertionPoints = function () { var myParagraphTool = Foundation.Content['6422780'].paragraphTool myParagraphTool.paragraphEndNodes.each((index, item) => { const insertionPointPlaceholder = jQuery(`
Insertion point ${index+1}
`) myParagraphTool.insertElemenAtIndex(insertionPointPlaceholder, index); }); return 'Paragraph insertion placeholders applied.'; }
KEEP THE HOUSTON PRESS FREE...Since we started the Houston Press, it has been defined as the free, independent voice of Houston, and we'd like to keep it that way. With local media under siege, it's more important than ever for us to rally support behind funding our local journalism. You can help by participating in our "I Support" program, allowing us to keep offering readers access to our incisive coverage of local news, food and culture with no paywalls.
Make a one-time donation today for as little as $1.
Katharine Shilcutt
Contact:Katharine Shilcutt
`); setTimeout(() => { (function(e,t){if(t._ym===void 0){t._ym="";var m=e.createElement("script");m.type="text/javascript",m.async=!0,m.src="//static.yieldmo.com/ym.min.js",(e.getElementsByTagName("head")[0]||e.getElementsByTagName("body")[0]).appendChild(m)}else t._ym instanceof String||void 0===t._ym.chkPls||t._ym.chkPls()})(document,window); }, 300); }}, 1000);
Trending Food & Drink
- Where to Dine in Houston This Father’s Day 2024
- Openings and Closings: Haywire Debuts, Low Tide Departs
- This Week in Houston Food Events: Two Iconic Local Spots Collaborate on a Chopped Cheese Kolache
Don't Miss Out
SIGN UP for the latestfood & drinknews, free stuff and more!
Sign Up
Become a member to support the independent voice of Houstonand help keep the future of the Houston Press FREE
I SupportLearn More
Latest Stories
- Openings and Closings: Haywire Debuts, Low Tide Departs
By Lorretta Ruggiero
- Houston’s 5 Best Weekend Food Bets: Freshly Shucked Oysters and Rosé All Day
By Brooke Viggiano
- Upcoming Houston Food Events: Free Anniversary Burgers and a One-Week-Only Strawberry Marg
By Brooke Viggiano
More »
', 'fetching') }, success: function (data) { // console.log(data.result, data.error, data) if (data) { if (data.error) { // presentResult('Trouble loading content.', 'error') } else if (data.result) { presentResult(data.result, 'remove', function () { cmInstance.queue.push(function () { if (typeof apntag === 'object') { apntag.anq.push(function() { if (typeof Foundation.ApnAds.fillAds === 'function') { Foundation.ApnAds.fillAds() } }) } }) cmInstance.queue.push(reflowRightColumnItems) }) } else { // presentResult('How did we get here?', 'error') } } else { // presentResult('No result or error returned from content request.', 'error') } }, complete: function () { fireEvent('foundation:multiitem:itemLoaded', { objId: contentOid }) cmInstance.queue.push(fetchUnloadedItems) }, error: function (error) { // presentResult('Ajax request error.', 'error') } }) } } cmInstance.queue.push(reflowRightColumnItems) cmInstance.queue.push(fetchUnloadedItems) var reflowSensor = new ResizeSensor(cmInstance.items[0], reflowRightColumnItems) jQuery(document).on('scroll resize', function () { // Prevent rapid firing of event stuff clearTimeout(onScrollTimeout) onScrollTimeout = setTimeout(function() { // console.log('Foundation.MultiItem onScroll event') updateFurthestDownInView() }, 100); }) jQuery(document).on('foundation:multiitem:itemchange', function () { // Prevent rapid firing of event stuff clearTimeout(onItemChangeTimeout) onItemChangeTimeout = setTimeout(function() { // console.log('Foundation.MultiItem foundation:multiitem:itemchange event ') cmInstance.onItemChange() }, 100); }) }; Foundation.MultiItems = Foundation.MultiItems || { add: function (multiItem) { Foundation.MultiItems[multiItem.id] = multiItem; } }; Foundation.MultiItems.add(new Foundation.MultiItem({ id: 'ContentRowMultiple', onItemChange: function () { if (this.currentPermaLink) { var state = {} var title = '' var url = this.currentPermaLink history.pushState(state, title, url) } if (this.currentCanonical) { document.querySelector('meta[property*=og\\:url]').href = this.currentCanonical document.querySelector('link[rel*=canonical]').href = this.currentCanonical } if (this.currentThumb) { document.querySelector('link[rel*=image_src]').href = this.currentThumb document.querySelector('meta[name*=thumbnail]').content = this.currentThumb document.querySelector('meta[property*=og\\:image]').content = this.currentThumb document.querySelector('meta[name*=twitter\\:image]').content = this.currentThumb } if (this.currentTitle) { document.querySelector('title').text = this.currentTitle } // Google track pageview if (typeof ga === 'function') { ga('set', 'location', window.location.href) for (let i = 2; i <= 10; i++) { let currentDimension = jQuery(Foundation.MultiItems["ContentRowMultiple"].currentItem).attr('ga-dimension'+i) if (typeof currentDimension === 'string') { ga('set', 'dimension' + i, currentDimension) } else { ga('set', 'dimension' + i, '') } } ga('send', 'pageview') // // Track when scrolling to another item // const multiItemIndex = jQuery(Foundation.MultiItems["ContentRowMultiple"].currentItem).attr('fdn-content-multi-item-index') // if (multiItemIndex.match(/[23456789]/) !== null) { // ga("send", "event", "Article", "ArticleScrolled", multiItemIndex); // /* console.log(`sending ArticleScrolled ${multiItemIndex}`); */ // } } // // Chartbeat track pageview if (typeof pSUPERFLY === 'object') { pSUPERFLY.virtualPage({ sections: jQuery(Foundation.MultiItems["ContentRowMultiple"].currentItem).attr('ga-dimension2') || '', authors: jQuery(Foundation.MultiItems["ContentRowMultiple"].currentItem).attr('ga-dimension6') || '', path: window.location.path, title: Foundation.MultiItems["ContentRowMultiple"].currentTitle || '' }) } } })) // // Track the first item on load. // jQuery(() => { // if (typeof ga === 'function') { // const multiItemIndex = jQuery(Foundation.MultiItems["ContentRowMultiple"].currentItem).attr('fdn-content-multi-item-index') // if (multiItemIndex.match(/\d/) !== null) { // ga("send", "event", "Article", "ArticleScrolled", multiItemIndex) // } // } // }) // if (typeof Foundation.Content !== 'object') { // function throwInExtraInsertions (oid) { var startIndex = 16; var objId = oid; var myBodyElement = jQuery(`[fdn-content-multi-item="${objId}"] .fdn-content-body`); var myParagraphTool = new window.Foundation.ParagraphTool(myBodyElement) // console.log(event, myBodyElement, myParagraphTool); if (typeof apntag === 'object') { apntag.anq.push(function() { // Throw in a placeholder after every 5th usable paragraph ending for (var i = startIndex; i < myParagraphTool.paragraphEndNodes.length; i++) { if (i % 4 === 0) { let currentNode = myParagraphTool.getNodeAtIndex(i); let myElement = jQuery('