Html 在iOS 7或8上的web视图中使用不同的样式表
我有一个应用程序,它使用网络视图来显示文本和图像。在iOS 8上,我将边距和填充设置为0px,以正确布局HTML页面。但是,要在iOS 7上正确查看,边距和填充必须设置为4px 我怎样才能拥有它,使它在两个iOS版本中都有两种不同的格式 我希望它在iOS 8上自动将填充和边距设置为0px,在iOS 7上设置为4px。这是我当前的样式表(在NSString中)Html 在iOS 7或8上的web视图中使用不同的样式表,html,ios,css,objective-c,webview,Html,Ios,Css,Objective C,Webview,我有一个应用程序,它使用网络视图来显示文本和图像。在iOS 8上,我将边距和填充设置为0px,以正确布局HTML页面。但是,要在iOS 7上正确查看,边距和填充必须设置为4px 我怎样才能拥有它,使它在两个iOS版本中都有两种不同的格式 我希望它在iOS 8上自动将填充和边距设置为0px,在iOS 7上设置为4px。这是我当前的样式表(在NSString中) NSString*stylesheet=@“body{margin:0;padding:0;}h1{font-weight:normal;
NSString*stylesheet=@“body{margin:0;padding:0;}h1{font-weight:normal;font-family:HelveticaNeue-Thin;padding:7px;margin-bottom:3px;}p{font-family:helveticane-Light;padding-top:0px;padding-left:7px;paddin-right:7px;margin-top:10px;}imgcenter{display:block;margin:0 auto;}b{字体大小:普通;字体系列:HelveticaNeue中等;}”;
NSString*footer=@;
[超级视图下载];
NSString*fullURL=[NSString stringWithFormat:@“%@%@@”,样式表,self.SelectedProduct.content,页脚];
NSString*path=[[NSBundle mainBundle]bundlePath];
NSURL*baseURL=[NSURL fileURLWithPath:path];
[_webviewloadhtmlstring:fullURL baseURL:baseURL];
我已经设法使用if语句和检查系统版本对其进行了分类
这是工作代码
#define SYSTEM_VERSION_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedSame)
#define SYSTEM_VERSION_GREATER_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedDescending)
#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)
#define SYSTEM_VERSION_LESS_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending)
#define SYSTEM_VERSION_LESS_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedDescending)
及
-(void)viewDidLoad{
如果(系统版本小于(@“8.0”)){
NSString*样式表=@“正文{空白:4px;填充:4px;空白顶部:0px}h1{字体重量:正常;字体系列:HelveticaNeue-Thin;填充:7px;空白底部:3px;空白顶部:0px;}字体系列:HelveticaNeue-Light;空白顶部:0px;空白左侧:7px;空白右侧:7px;空白顶部:10px;}imgcenter{显示:块;空白:0自动;}b{字体大小:普通;字体系列:HelveticaNeue中等;}”;
NSString*footer=@;
[超级视图下载];
NSString*fullURL=[NSString stringWithFormat:@“%@%@@”,样式表,self.SelectedProduct.content,页脚];
NSString*path=[[NSBundle mainBundle]bundlePath];
NSURL*baseURL=[NSURL fileURLWithPath:path];
[_webviewloadhtmlstring:fullURL baseURL:baseURL];
}
如果(系统版本大于或等于(@“8.0”)){
NSString*stylesheet=@“正文{页边距:0px;填充:0px;页边距顶部:0px}h1{字体重量:正常;字体系列:HelveticaNeue-Thin;填充:7px;页边距底部:3px;}p{字体系列:HelveticaNeue-Light;填充顶部:0px;填充左侧:7px;填充右侧:7px;页边距顶部:10px;}imgcenter{display:block;页边距:0 auto;}b{字体大小:普通;字体系列:HelveticaNeue中等;}”;
NSString*footer=@;
[超级视图下载];
NSString*fullURL=[NSString stringWithFormat:@“%@%@@”,样式表,self.SelectedProduct.content,页脚];
NSString*path=[[NSBundle mainBundle]bundlePath];
NSURL*baseURL=[NSURL fileURLWithPath:path];
[_webviewloadhtmlstring:fullURL baseURL:baseURL];
}
是否可以使用CSS媒体查询获得正确的效果?请参阅,谢谢您的帮助。虽然我使用了不同的方法解决了问题,但您的链接帮助解决了不同的问题。
#define SYSTEM_VERSION_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedSame)
#define SYSTEM_VERSION_GREATER_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedDescending)
#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)
#define SYSTEM_VERSION_LESS_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending)
#define SYSTEM_VERSION_LESS_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedDescending)
- (void)viewDidLoad{
if (SYSTEM_VERSION_LESS_THAN(@"8.0")) {
NSString *stylesheet=@"<html><head><style>body { margin: 4px; padding: 4px; margin-top:0px}h1{font-weight:normal;font-family: HelveticaNeue-Thin; padding: 7px; margin-bottom: 3px; padding-top:0px;}p{font-family: HelveticaNeue-Light; padding-top:0px; padding-left: 7px;paddin-right: 7px; margin-top:10px;}imgcenter {display: block; margin: 0 auto;}b{font-weight:normal;font-family: HelveticaNeue-Medium;}</style></head><body>";
NSString *footer=@"</body></html>";
[super viewDidLoad];
NSString *fullURL = [NSString stringWithFormat:@"%@%@%@",stylesheet, self.SelectedProduct.content, footer];
NSString *path = [[NSBundle mainBundle] bundlePath];
NSURL *baseURL = [NSURL fileURLWithPath:path];
[_webview loadHTMLString:fullURL baseURL:baseURL];
}
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"8.0")) {
NSString *stylesheet=@"<html><head><style>body { margin: 0px; padding: 0px; margin-top:0px}h1{font-weight:normal;font-family: HelveticaNeue-Thin; padding: 7px; margin-bottom: 3px; }p{font-family: HelveticaNeue-Light; padding-top:0px; padding-left: 7px;paddin-right: 7px; margin-top:10px;}imgcenter {display: block; margin: 0 auto;}b{font-weight:normal;font-family: HelveticaNeue-Medium;}</style></head><body>";
NSString *footer=@"</body></html>";
[super viewDidLoad];
NSString *fullURL = [NSString stringWithFormat:@"%@%@%@",stylesheet, self.SelectedProduct.content, footer];
NSString *path = [[NSBundle mainBundle] bundlePath];
NSURL *baseURL = [NSURL fileURLWithPath:path];
[_webview loadHTMLString:fullURL baseURL:baseURL];
}